Kip Irvine has written five computer programming textbooks,for Intel Assembly Language, C++, Visual Basic (beginning andadvanced), and COBOL. His book Assembly Language for Intel-BasedComputers has been translated into six languages. His first collegedegrees (B.M., M.M., and doctorate) were in Music Composition, atUniversity of Hawaii and University of Miami. He began programmingcomputers for music synthesis around 1982 and taught programmi.
【目录】
preface xix
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
1.6 exercises
2 x86 processor architecture
2.1 general concepts
2.2 x86 architecture details
2.3 x86 memory management
2.4 components of atypical x86 computer
2.5 input-output system
2.6 chapter summary
2.7 chapter exercises
3 assembly language fundamentals
3.1 basic elements of assembly language
3.2 example: adding and subtracting integers
3.3 assembling, linking, and running programs
3.4 defining data
3.5 symbolic constants
3.6 real-address mode programming (optional)
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
5.1 introduction
5.2 linking to an external library
5.3 the book\\\\\\\\\\\\\\\'s link library
5.4 stack operations
5.5 defining and using procedures
5.6 program design using procedures
5.7 chapter summary
5.8 programming exercises
6 conditionalprocessing
6.1 introduction
6.2 boolean and comparison instructions
6.3 conditional jumps
6.4 conditional loop instructions
6.5 conditional structures
6.6 application: finite-state machines
6.7 conditional control flow directives
6.8 chapter summary
6.9 programming exercises
7 integer arithmetic
7.1 introduction
7.2 shift and rotate instructions
7.3 shift and rotate applications
7.4 multiplication and division instructions
7.5 extended addition and subtraction
7.6 ascii and unpacked decimal arithmetic
7.7 packed decimal arithmetic
7.8 chapter summary
7.9 programming exercises
8 advanced procedures
8.1 introduction
8.2 stack frames
8.3 recursion
8.4 invoke, addr, proc, and proto
8.5 creating multimodule programs
8.6 java bytecodes
8.7 chapter summary
8.8 programming exercises
9 strings and arrays
9.1 introduction
9.2 string primitive instructions
9.3 selected string procedures
9.4 two-dimensional arrays
9.6 java bytecodes: string processing
9.7 chapter summary
9.8 programming exercises
10 structures and macros
10.1 structures
10.2 macros
10.3 conditional-assembly directives
10.4 defining repeat blocks
10.5 chapter summary
10.6 programming exercises
11 ms-windows programming
11.1 win32 console programming
11.2 writing a graphical windows application
11.3 dynamic memory allocation
11.4 x86 memory management
11.5 chapter summary
11.6 programming exercises
12 floating-point processing and instruction encoding
12.1 floating-point binary representation
12.2 floating-point unit
12.3 x86 instruction encoding
12.4 chapter summary
12.5 programming exercises
13 high-level language interface
13.1 introduction
13.2 inline assembly code
13.3 linking to c/c++ in protected mode
13.4 linking to c/c++ in real-address mode
13.5 chapter summary
13.6 programming exercises
14 16-bit ms-dos programming
14.1 ms-dos and the ibm-pc
14.2 ms-dos function calls (int 21h)
14.3 standard ms-dos file i/o services
14.4 chapter summary
14.5 programming exercises
chapters are available from the companion web site
15 disk fundamentals
16 bios-level programming
17 expert ms-dos programming
appendix a masm reference
appendix b the x86 instruction set
appendix c answers to review questions
appendices are available from the companion web site
appendix d bios and ms-dos interrupts
appendix e answers to review questions (chapters 15-17)
以下为对购买帮助不大的评价