Assembly Language for Intel-Based Computers, 5/e(美國精裝版)

Kip R. Irvine

  • 出版商: Prentice Hall
  • 出版日期: 2006-06-26
  • 售價: $4,790
  • 貴賓價: 9.5$4,551
  • 語言: 英文
  • 頁數: 752
  • 裝訂: Hardcover
  • ISBN: 0132383101
  • ISBN-13: 9780132383103
  • 相關分類: Assembly
  • 已過版

買這商品的人也買了...

相關主題

商品描述

Description

For undergraduate courses in assembly language programming and introductory courses in computer systems and computer architecture.

 

Written specifically for the Intel/Windows/DOS  platform, this complete and fully updated study of assembly language teaches students to write and debug programs at the machine level. Based on the Intel processor family, the text simplifies and demystifies concepts that students need to grasp before they can go on to more advanced computer architecture and operating systems courses. Students put theory into practice through writing software at the machine level, creating a memorable experience that gives them the confidence to work in any OS/machine-oriented environment. Proficiency in one other programming language, preferably Java, C, or C++, is recommended. 

 

The 5th edition is available with an optional value-pack containing containing Microsoft Visual C++ 2005 Express under isbn: 0132304686. Students and lab managers will be able to download MASM 8.0 from the book page at www.prenhall.com/irvine or on the Microsoft Web site (part of the Windows Vista SDK). The two products work together very well, and instructions are available on my Web site that explain how to set things up. Go to http://asmirvine.com, and select "Getting started".

 

 

 

 

Table of Contents

1. Basic Concepts.

    Applications of assembly language. Basic concepts. Machine language. Data representation.

 

2. IA-32 Processor Architecture.

    Basic microcomputer design. Instruction execution cycle. IA-32 processor architecture. IA-32 memory management. Components of a microcomputer.

    The input-output system.

 

3. Assembly Language Fundamentals.

    Introduction to assembly language. Linking and debugging. Defining constants and variables.

 

4. Data Transfers, Addressing, and Arithmetic.

    Simple data transfer and arithmetic instructions. Assemble-link-execute cycle. Operators. Directives. Expressions. JMP and LOOP instructions. Indirect    addressing.

 

5. Procedures.

    Linking to an external library. Description of the book’s link library. Stack operations. Defining and using procedures. Flowcharts. Top-down structured design.

 

6. Conditional Processing.

    Boolean and comparison instructions. Conditional jumps and loops. High-level logic structures. Finite state machines.

 

7. Integer Arithmetic.

    Shift and rotate instructions with useful applications. Multiplication and division. Extended addition and subtraction. ASCII and packed decimal arithmetic.

 

8.  Advanced Procedures.

    Stack Parameters. Local Variables. Advanced PROC and INVOKE Directives. Recursion.

 

9.  Strings and Arrays.

    String Primitives. Manipulated Arrays of Characters and Integers. Two-dimensional arrays. Sorting. Searching.

 

10. Structures and Macros.

    Structures. Macros. Conditional Assembly Directives. Defining Repeat Blocks.

 

11. MS-Windows Programming.

    Protected Mode Memory Management Concepts.  Using the Microsoft® Windows API to Display Text and Colors. Dynamic Memory Allocation.

 

12. High-Level Language Interface.

Parameter Passing Conventions. Inline Assembly Code. Linking Assembly Language Modules to C and C++ Programs.

 

13. 16-Bit MS-DOS Programming.

    Calling MS-DOS Interrupts for Console and File Input-Output.

 

14. Disk Fundamentals.

    Disk Storage Systems. Sectors. Clusters. Directories. File Allocation Tables. Handling MS-DOS Error Codes. Drive and Directory Manipulation.

 

15. BIOS-Level Programming.

    Keyboard Input. Video Text, Graphics, and Mouse Programming.

 

16. Expert MS-DOS Programming.

    Custom-Designed Segments. Runtime Program Structure. Interrupt Handling. Hardware Control Using I/O Ports.

 

17. Floating Point Programming and IA-32 Instruction Encoding.

    Floating-point Binary Representation and Floating-Point Arithmetic. Learning to Program the IA-32 Floating-Point Unit. Understanding the Encoding of IA-32 Machine Instructions.

 

Appendix A: Installing and Using the Assembler.

 

Appendix B: The IA-32 Instruction Set.

 

Appendix C: BIOS and MS-DOS Interrupts.

 

Appendix D: MASM Reference.

 

Appendix E: Answers to Review Questions.