Mastering Assembly Programming
by: Alexey Lyashko
ISBN-10: 1787287483
ISBN-13: 9781787287488
Released: 2017-11-06
Pages: 437
Publisher finelybook 出版社: Packt
Book Description
Key Features
Understand the Assembly programming concepts and the benefits of examining the AL codes generated from high level languages
Learn to incorporate the assembly language routines in your high level language applications
Understand how a CPU works when programming in high level languages
Book Description
The Assembly language is the lowest level human readable programming language on any platform. Knowing the way things are on the Assembly level will help developers design their code in a much more elegant and efficient way. It may be produced by compiling source code from a high-level programming language (such as C/C++) but can also be written from scratch. Assembly code can be converted to machine code using an assembler.
The first section of the book starts with setting up the development environment on Windows and Linux,mentioning most common toolchains. The reader is led through the basic structure of CPU and memory,and is presented the most important Assembly instructions through examples for both Windows and Linux,32 and 64 bits. Then the reader would understand how high level languages are translated into Assembly and then compiled into object code. Finally we will cover patching existing code,either legacy code without sources or a running code in same or remote process.
What you will learn
Obtain deeper understanding of the underlying platform
Understand binary arithmetic and logic operations
Create elegant and efficient code in Assembly language
Understand how to link Assembly code to outer world
Obtain in-depth understanding of relevant internal mechanisms of Intel CPU
Write stable,efficient and
Contents
Chapter 1. Intel Architecture
Chapter 2. Setting Up a Development Environment
Chapter 3. Intel Instruction Set Architecture (ISA)
Chapter 4. Memory Addressing Modes
Chapter 5. Parallel Data Processing
Chapter 6. Macro Instructions
Chapter 7. Data Structures
Chapter 8. Mixing Modules Written in Assembly and Those Written in High-Level Languages
Chapter 9. Operating System Interface
Chapter 10. Patching Legacy Code
Chapter 11. Oh,Almost Forgot