Table of Contents
The Intel Microprocessors: 8086/8088, 80186/80188, 80286,
80386, 80486, Pentium, Pentium Pro Processor, Pentium II, Pentium III, and Pentium 4 -
Architecture, Programming, and Interfacing, Seventh Edition

© 2005 by Barry B. Brey

CHAPTER 1: Introduction to the Microprocessor
- 1-1 A Historical Background
- 1-2 The Microprocessor-Based Personal Computer System
- 1-3 Number Systems
- 1-4 Computer Data Formats
- 1-5 Summary
- 1-6 Questions and Problems
CHAPTER 2: The Microprocessor and its Architecture
- 2-1 Internal Microprocessor Architecture
- 2-2 Real Mode Memory Addressing
- 2-3 Introduction to Protected Mode Memory Addressing
- 2-4 Memory Paging
- 2-5 Summary
- 2-6 Questions and Problems
CHAPTER 3: Addressing Modes
- 3-1 Data-Addresing Modes
- 3-2 Program Memory-Addressing Modes
- 3-3 Stack Memory-Addressing Modes
- 3-4 Summary
- 3-5 Questions and Problems
CHAPTER 4: Data Movement Instructions
- 4-1 MOV Revisited
- 4-2 PUSH/POP
- 4-3 Load-Effective Address
- 4-4 String Data Transfers
- 4-5 Miscellaneous Data Transfers
- 4-6 Segment Override Prefix
- 4-7 Assembler Detail
- 4-8 Summary
- 4-9 Questions and Problems
CHAPTER 5: Arithmetic and Logic Instructions
- 5-1 Addition, Subtraction, and Comparison
- 5-2 Multiplication and Division
- 5-3 BCD and ASCII Arithmetic
- 5-4 Basic Logic Instructions
- 5-5 Shift and Rotate
- 5-6 String Comparisons
- 5-7 Summary
- 5-8 Questions and Problems
CHAPTER 6: Program Control Instructions
- 6-1 The Jump Gorup
- 6-2 Controlling the flow of an Assembly Language Program
- 6-3 Procedures
- 6-4 Introduction to Interrrupts
- 6-5 Machine Control and Miscellaneous Instructions
- 6-6 Summary
- 6-7 Questions and Problems
CHAPTER 7: Using Assembly Language with C/C++
- 7-1 Using Assembly Language with C++ for 16-bit DOS Applications
- 7-2 Using Assembly Language with Visual C/C++ for 32-bit Applications
- 7-3 Separate Assembly Objects
- 7-4 Summary
- 7-5 Questions and Problems
CHAPTER 8: Programming the Microprocessor
- 8-1 Modular Programming
- 8-2 Using the Keyboard and Video Display
- 8-3 Data Conversionss
- 8-4 Disk Files
- 8-5 Example Programs
- 8-6 Summary
- 8-7 Questions and Problems
CHAPTER 9: 8086/8088 Hardware Specifications
- 9-1 Pin-outs and Pin Functions
- 9-2 Clock Generator (8284A)
- 9-3 Bus Buffering and Latching
- 9-4 Bus Timing
- 9-5 Ready and the Wait State
- 9-6 Minimum Mode Verse Maximum Mode
- 9-7 Summary
- 9-8 Questions and Problems
CHAPTER 10: Memory Interface
- 10-1 Memory Devices
- 10-2 Address Decoding
- 10-3 8088 and 80188 (8-bit) Memory Interface
- 10-4 8086, 80186, 80286, and 80386SX (16-bit) Memory
Interface
- 10-5 80386DX and 80486 (32-bit) Memory Inteface
- 10-6 Pentium, Pentium Pro, and Pentium II (64-bit) Memory
Interface
- 10-7 Dynamic RAM
- 10-8 Summary
- 10-9 Questions and Problems
CHAPTER 11: Basic I/O Interface
- 11-1 Introduction to I/O Interface
- 11-2 I/O Port Address Decoding
- 11-3 The Programmable Peripheral Interface
- 11-4 The 8279 Programmable Keyboard/Display Interface
- 11-5 8254 Progammable Interval Timer
- 11-6 16550 Programmable Communications Interface
- 11-7 Analog-to-Digital (ADC) and Digital-to-Analog (DAC)
Conversions
- 11-8 Summary
- 11-9 Questions and Problems
CHAPTER 12: Interrupts
- 12-1 Basic Interrupt Processing
- 12-2 Hardware Interrupts
- 12-3 Expanding the Interrupt Structure
- 12-4 8259A Programmable Interrupt Controller
- 12-5 Interrupt Examples
- 12-6 Summary
- 12-7 Questions and Problems
CHAPTER 13: Direct Memory Access and DMA-Controlleed I/O
- 13-1 Basic DMA Operation
- 13-2 The 8237 DMA Controller
- 13-3 Shared-Bus Operation
- 13-4 Disk Memory Systems
- 13-5 Video Displays
- 13-6 Summary
- 13-7 Questions and Problems
CHAPTER 14: The Arithmetic Coprocessor and MMX Technology
- 14-1 Data Formats for the Arithmetic Coprocessor
- 14-2 The 80X87 Architecture
- 14-3 Instruction Set
- 14-4 Programming with the Arithmetic Coprocessor
- 14-5 Introduction to MMX Technology
- 14-6 Introduction to SSE Technology
- 14-7 Summary
- 14-8 Questions and Problems
CHAPTER 15: Bus Interface
- 15-1 The ISA Bus
- 15-2 The Peripheral Component Interconnect (PCI) Bus
- 15-3 The Parallel Printer (LPT1) Interface
- 15-4 The Serial COM Ports
- 15-5 The Universal Serial Bus (USB)
- 15-6 Accelerates Graphics Port (AGP)
- 15-7 Summary
- 15-8 Questions and Problems
CHAPTER 16: The 80186, 80188, and 80286 Microprocessors
- 16-1 80186/80188 Architecture
- 16-2 Programming the 80186/80188 Enhancements
- 16-3 80C188EB Example Interface
- 16-4 Real Time Operating Systems (RTOS)
- 16-5 Introduction to the 80286
- 16-6 Summary
- 16-7 Questions and Problems
CHAPTER 17: The 80386 and 80486 Microprocessor
- 17-1 Introduction to the 80386 Microprocerssor
- 17-2 Special 80386 Registers
- 17-3 80386 Memory Management
- 17-4 Moving to Protected Mode
- 17-5 Virtual 8086 Mode
- 17-6 The Memory Paging Mechanism
- 17-7 Introduction to the 80486 Microprocessor
- 17-8 Summary
- 17-9 Questions and Problems
CHAPTER 18: The Pentium and Pentium Pro Microprocessors
- 18-1 Introduction to the Pentium Microprocessor
- 18-2 Special Pentium Registers
- 18-3 Pentium Memory Management
- 18-4 New Pentium Instructions
- 18-5 Introduction to the Pentium Pro Microprocessor
- 18-6 Special Pentium Pro Features
- 18-7 Summary
- 18-8 Questions and Problems
CHAPTER 19: The Pentium II, Pentium III, and Pentium 4 Microprocessors
- 19-1 Introduction to the Pentium II Microprocessor
- 19-2 Pentium II Software Changes
- 19-3 The Pentium III
- 19-4 The Pentium 4
- 19-5 Summary
- 19-6 Questions and Problems
Appendix A: The Assembler, Disk Operating System, Basic I/O
System, Mouse, and DPMI Memory Manager
Appendix B: Instruction Set Summary
Appendix C: Flag Bit Changes
Appendix D: Answers to Selected Even-Numbered Questions and
Problems

return to publication list