1. Basic Concepts.
1.1 Welcome to Assembly Language.
1.2 Virtual Machine Concept.
1.3 Data Representation.
1.4 Boolean Operations.
1.5 Chapter Summary
2. Machine Architecture.
2.1 General Concepts.
2.2 IA-32 Processor Architecture.
2.3 IA-32 Memory Management.
2.4 Components of an IA-32 Microcomputer.
2.5 Input-Output System.
2.6 Chapter Summary
3. Assembly Language Fundamentals.
3.1 Basic Elements of Assembly Language.
3.2 Example: Adding Three Integers.
3.3 Assembling, Linking, and Running Programs.
3.4 Defining Data.
3.5 Symbolic Constants.
3.6 Real-Address Mode Programming.
3.7 Chapter Summary
3.8 programming Exercises
4. Data Transfers, Addressing, and Arithmetic.
4.1 Data Transfer Instructions.
4.2 Addition and Subtraction.
4.3 Data-Related Operators and Directives.
4.4 Indirect Addressing.
4.5 JMP and LOOP Instructions.
4.6 Chapter Summary
4.7 Programming Exercises
5. Procedures.
6. Conditional Processing.
7. Integer Arithmetic.
8. Advanced Procedures.
9. Strings and Arrays.
10. Structures and Macros.
11. 32-Bit Windows Programming.
12. High-Level Language Interface.
13. 16-Bit MS-DOS Programming.
14. Disk Fundamentals.
15. BIOS-Level Programming.
16. Expert MS-DOS Programming.
17. Advanced Topics
Appendix A: Installing and Using the Assembler.
Appendix B: MASM Reference.
Appendix C: The Intel Instruction Set.
Appendix D: BIOS and MS-DOS Interrupts.