Assembly Language for Intel-Based Computers / Edition 5by Kip R. Irvine
Pub. Date: 06/30/2006
Publisher: Prentice Hall
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
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.
- Prentice Hall
- Publication date:
- Edition description:
- Older Edition
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.
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.
and post it to your social network
Most Helpful Customer Reviews
See all customer reviews >