Beginning x64 Assembly Programming From Novice to AVX Professional /

Program in assembly starting with simple and basic programs, all the way up to AVX programming. By the end of this book, you will be able to write and read assembly code, mix assembly with higher level languages, know what AVX is, and a lot more than that. The code used in Beginning x64 Assembly Pro...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Van Hoey, Jo (Συγγραφέας, http://id.loc.gov/vocabulary/relators/aut)
Συγγραφή απο Οργανισμό/Αρχή: SpringerLink (Online service)
Μορφή: Ηλεκτρονική πηγή Ηλ. βιβλίο
Γλώσσα:English
Έκδοση: Berkeley, CA : Apress : Imprint: Apress, 2019.
Έκδοση:1st ed. 2019.
Θέματα:
Διαθέσιμο Online:Full Text via HEAL-Link
LEADER 05467nam a2200493 4500
001 978-1-4842-5076-1
003 DE-He213
005 20191031005906.0
007 cr nn 008mamaa
008 191031s2019 xxu| s |||| 0|eng d
020 |a 9781484250761  |9 978-1-4842-5076-1 
024 7 |a 10.1007/978-1-4842-5076-1  |2 doi 
040 |d GrThAP 
050 4 |a QA76.7-76.73 
050 4 |a QA76.76.C65 
072 7 |a UMX  |2 bicssc 
072 7 |a COM051010  |2 bisacsh 
072 7 |a UMX  |2 thema 
072 7 |a UMC  |2 thema 
082 0 4 |a 005.13  |2 23 
100 1 |a Van Hoey, Jo.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
245 1 0 |a Beginning x64 Assembly Programming  |h [electronic resource] :  |b From Novice to AVX Professional /  |c by Jo Van Hoey. 
250 |a 1st ed. 2019. 
264 1 |a Berkeley, CA :  |b Apress :  |b Imprint: Apress,  |c 2019. 
300 |a XIX, 413 p. 114 illus., 1 illus. in color.  |b online resource. 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
347 |a text file  |b PDF  |2 rda 
505 0 |a 1. Your First Program: "hello, world" -- 2. Binary numbers, hexadecimal numbers and registers -- 3. Program Analysis with a Debugger: gdb -- 4. Your Next Program: Alife and Kicking! -- 5. Assembly is based on logic -- 6. Data Display Debugger -- 7. Jumping and Looping -- 8. Memory -- 9. Integer Arithmetic -- 10. The Stack -- 11. Floating-Point Arithmetic -- 12. Functions -- 13. Stack Alignment and Stack Frame -- 14. External Functions -- 15. Calling Conventions -- 16. Bit Operations -- 17. Macros -- 18. Console I/O -- 19. File I/O -- 20. Command Line Arguments -- 21. From C to Assembler -- 22. Inline assembler -- 23. Strings -- 24. Got some ID? -- 25. SIMD -- 26. Watch your MXCSR -- 27. SSE -- 28. SSE Packed Integers -- 29. SSE String manipulation -- 30. Search a String for a Character -- 31. Compare Strings -- 32. Do the Shuffle -- 33. SSE String Masks -- 34. Advanced Vector Extensions - AVX -- 35. AVX matrix operations -- 36. Matrix Transpose -- 37. Performance Optimization -- 38. Hello, Windows World -- 39. Using the Windows API -- 40. Using a Window -- 41. Windows Argument Passing -- 42. Variadic functions -- 43. Windows Files -- Afterword. Where to go from here?. 
520 |a Program in assembly starting with simple and basic programs, all the way up to AVX programming. By the end of this book, you will be able to write and read assembly code, mix assembly with higher level languages, know what AVX is, and a lot more than that. The code used in Beginning x64 Assembly Programming is kept as simple as possible, which means: no graphical user interfaces or whistles and bells or error checking. Adding all these nice features would distract your attention from the purpose: learning assembly language. The theory is limited to a strict minimum: a little bit on binary numbers, a short presentation of logical operators, and some limited linear algebra. And we stay far away from doing floating point conversions. The assembly code is presented in complete programs, so that you can test them on your computer, play with them, change them, break them. This book will also show you what tools can be used, how to use them, and the potential problems in those tools. It is not the intention to give you a comprehensive course on all of the assembly instructions, which is impossible in one book: look at the size of the Intel Manuals. Instead, the author will give you a taste of the main items, so that you will have an idea about what is going on. If you work through this book, you will acquire the knowledge to investigate certain domains more in detail on your own. The majority of the book is dedicated to assembly on Linux, because it is the easiest platform to learn assembly language. At the end the author provides a number of chapters to get you on your way with assembly on Windows. You will see that once you have Linux assembly under your belt, it is much easier to take on Windows assembly. This book should not be the first book you read on programming, if you have never programmed before, put this book aside for a while and learn some basics of programming with a higher-level language such as C. You will: Discover how a CPU and memory works Appreciate how a computer and operating system work together See how high-level language compilers generate machine language, and use that knowledge to write more efficient code Be better equipped to analyze bugs in your programs Get your program working, which is the fun part Investigate malware and take the necessary actions and precautions. 
650 0 |a Programming languages (Electronic computers). 
650 0 |a Computer programming. 
650 0 |a Microprogramming . 
650 1 4 |a Programming Languages, Compilers, Interpreters.  |0 http://scigraph.springernature.com/things/product-market-codes/I14037 
650 2 4 |a Programming Techniques.  |0 http://scigraph.springernature.com/things/product-market-codes/I14010 
650 2 4 |a Control Structures and Microprogramming.  |0 http://scigraph.springernature.com/things/product-market-codes/I12018 
710 2 |a SpringerLink (Online service) 
773 0 |t Springer eBooks 
776 0 8 |i Printed edition:  |z 9781484250754 
776 0 8 |i Printed edition:  |z 9781484250778 
856 4 0 |u https://doi.org/10.1007/978-1-4842-5076-1  |z Full Text via HEAL-Link 
912 |a ZDB-2-CWD 
950 |a Professional and Applied Computing (Springer-12059)