Baixe o app para aproveitar ainda mais
Prévia do material em texto
Homenull Contentsnull Prefacenull 0 Introduction to Computingnull 0.1 Numbering and Coding Systemsnull 0.2 Inside the Computernull 0.3 Brief History of the CPUnull Answers to Review Questions 1 The 80x86 Microprocessornull 1.1 Brief History of the 80x86 Familynull 1.2 Inside the 8088/8086null 1.3 Introduction to Assembly Programmingnull 1.4 Introduction to Program Segmentsnull 1.5 More about Segments in the 80x86null 1.6 80x86 Addressing Modesnull Answers to Review Questionsnull 2 Assembly Language Programmingnull 2.1 Directives and a simple Programnull 2.2 Assemble, Link, and Run a Programnull 2.3 More Sample Programsnull 2.4 Control Transfer Instructionsnull 2.5 Data Types and Data Definitionsnull 2.6 Full Segment Definitionnull 2.7nullExe vs. COM Files Answers to Review Questionsnull 3 Arithmetic and Logic Instructions and Programsnull 3.1 Unsigned Addition and Subtractionnull 3.2 Unsigned Multiplication and Divisionnull 3.3 Logic Instructions and Sample Programsnull 3.4 BCD and ASCII Operands and Instructionsnull 3.5 Rotate Instructionsnull 3.6 Bitwise Operation in the C Languagenull Answers to Review Questionsnull 4 BIOS and DOS Programming in Assembly and Cnull 4.1 BIOS INT 10H Programmingnull 4.2 DOS INTERRUPT 21Hnull 4.3 INT 16H Keyboard Programmingnull 4.4 Interrupt Programming with Cnull Answers to Review Questionsnull 5 Macros and the Mousenull 5.1 What is a Macro and how is it used ?null 5.2 Mouse Programming with Interrupt 33Hnull Answers to Review Questionsnull 6 Signed Numbers, Strings, and Tablesnull 6.1 Signed Number Arithmetic Operationsnull 6.2 String and Table Operationsnull Answers to Review Questionsnull 7 Modules: Modular and C Programingnull 7.1 Writing and Linking Modulesnull 7.2 Some very useful Modulesnull 7.3 Passing Parameters among Modulesnull 7.4 Combining Assembly Language and C Programsnull Answers to Review Questionsnull 8 32-Bit Programming for 386 and 486 Machinesnull 8.1 80386/80486 Machines in Real Modenull 8.2 Some Simple 386/486 Programsnull 8.3 80x86 Performance Comparisonnull Answers to Review Questionsnull 9 8088, 80286 Microprocesors and ISA Busnull 9.1 8088 Microprocessornull 9.2 8284 and 8288 Supporting Chipsnull 9.3 8-Bit Section of ISA Busnull 9.4 80286 Microprocessornull 9.5 16-Bit ISA Busnull Answers to Review Questionsnull 10 Memory and Memory Interfacingnull 10.1 Semiconductor Memory Fundamentalsnull 10.2 Memory Address Decodingnull 10.3 IBM PC Memory Mapnull 10.4 Data Integrity in RAM and ROMnull 10.5 16-Bit Memory Interfacingnull 10.6 ISA Bus Memory Interfacingnull Answers to Review Questionsnull 11 I/O and the 8255; ISA Bus Interfacingnull 11.1 8088 Input/Output Instructionsnull 11.2 I/O Address Decoding and Designnull 11.3 I/O Address Map of X86 PCsnull 11.4 8255 PPI Chipnull 11.5 PC Interface Trainer and Bus Extendernull 11.6 I/O Programming with C/C++ and VBnull 11.7 8-Bit and 16-Bit I/O Timing in ISA Busnull Answers to Review Questionsnull 12 Interfacing to the PC: LCD, Motor,nullADC, and Sensor 12.1 Interfacing an LCD to the PCnull 12.2 Interfacing a Stepper Motor to the PCnull 12.3 Interfacing DAC to the PCnull 12.4 Interfacing ADC and Sensors to the PCnull Answers to Review Questionsnull 13 8253/54 Timer and Musicnull 13.1 8253/54 Timer Description and Initializationnull 13.2 IBM PC 8253/54 Timer Connections and Programmingnull 13.3 Generating Music on the IBM PCnull 13.4 Shape of 8253/54 Outputsnull Answers to Review Questionsnull 14 Interrupts and the 8259 Chipnull 14.1 8088/86 Interruptsnull 14.2 IBM PC and MS DOS Assignment of Interruptsnull 14.3 8259 Programmable Interrupt Controllernull 14.4 Use of the 8259 Chip in the IBM PC/XTnull 14.5 Interrupts on 80286 and higher 80x86 PCsnull Answers to Review Questionsnull 15 Direct Memory Accessing; The 8237 DMA Chipnull 15.1 Concept of DMAnull 15.2 8237 DMA Chip Programmingnull 15.3 8237 DMA Interfacing in the IBM PC/XTnull 15.4 Refreshing DRAM Using Channel 0 of the 8237null 15.5 DMA in 80x86-based PC AT-Type Computersnull Answers to Review Questionsnull 16 Video and Video Adaptersnull 16.1 Principles of Monitors and Video Adaptersnull 16.2 Video Adapters and Text Mode Programmingnull 16.3 Text Mode Programming using INT 10Hnull 16.4 Graphics and Graphics Programmingnull Answers to Review Questionsnull 17 Serial Data Communication and the 16450/8250/51 Chipsnull 17.1 Basics of Serial Communicationnull 17.2 Accessing IBM PC COM Ports Using DOS and BIOSnull 17.3 Interfacing the NS8250/16450 UART in the IBM PCnull 17.4 Intel 8251 USART and Synchronous Communicationnull Answers to Review Questionsnull 18 Keyboard and Printer Interfacingnull 18.1 Interfacing the Keyboard to the CPUnull 18.2 PC Keyboard Interfacing and Programmingnull 18.3 Printer and Printer Interfacing in the IBM PCnull 18.4 Bidirectional Data Bus in Parallel Portsnull Answers to Review Questionsnull 19 Floppy Disks, Hard Disks, and Filesnull 19.1 Floppy Disk Organizationnull 19.2 Hard Disksnull 19.3 Disk File Programmingnull Answers to Review Questionsnull 20 The 80x87 Math Coprocessornull 20.1 Math Coprocessor and IEEE Floating-Pointnull 20.2 80x87 Instructions and Programmingnull 20.3 8087 Hardware Connections in the IBM PC/XTnull 20.4 80x87 Instructions and Timingnull Answers to Review Questionsnull 21 386 Microprocessor: Real vs. Protected Modenull 21.1 80386 in Real Modenull 21.2 80386: A Hardware Viewnull 21.3 80386 Protected Modenull Answers to Review Questionsnull 22nullHigh-Speed Memory Interfacing and Cache 22.1 Memory Cycle Time of the 80x86null 22.2 Page, Static Column, and Nibble Mode DRAMsnull 22.3 Cache Memorynull 22.4 EDO, SDRAM, and RAMBUS Memoriesnull Answers to Review Questionsnull 23 486, Pentium, Pentium Pro and MMXnull 23.1 The 80486 Microprocessornull 23.2 Intel's Pentiumnull 23.3 RISC Architecturenull 23.4 Pentium Pro Processornull 23.5 MMX Technologynull 23.6 Processor Identification in Intel x86null Answers to Review Questionsnull 24 MS DOS Structure, TSR, and Device Driversnull 24.1 MS DOS Structurenull 24.2 TSR and Device Driversnull Answers to Review Questionsnull 25 MS DOS Memory Managementnull 25.1 80x86 PC Memory Terminology and Conceptsnull 25.2 DOS Memory Management and Loading Highnull Answers to Review Questionsnull 26 IC Technology and System Design Considerationsnull 26.1 Overview of IC Technologynull 26.2 IC Interfacing and System Deisgn Considerationsnull 26.3 Data Integrity and Error Detection in DRAMnull Answers to Review Questionsnull 27 ISA, PCI, and USB Busesnull 27.1 ISA Busesnull 27.2 PCI Local Busesnull 27.3 USB Portnull Answers to Review Questionsnull 28 Programming DOS, BIOS Hardware with C/C++null 28.1 BIOS and DOS Interrupt Programming with Cnull 28.2 Programming PC Hardware with C/C++null Answers to Review Questionsnull AnullDebug Programming A.1 Entering and Exiting Debugnull A.2 Examining and Altering teh Contents of Registersnull A.3 Coding and Running Programs in Debugnull A.4 Data Manipulation in Debugnull A.5 Examining the Stack in Debugnull A.6 Examining/Altering the Flag Register in Debugnull A.7 Additional Debug Data Manipulation Commandsnull A.8 Loading and Writing Programsnull B 80x86 Instructions and Timingnull B.1 The 8086 Instruction Setnull B.2 Instruction Timingnull C Assembler Directives and Naming Rulesnull C.1 80x86 Assembler Directivesnull C.2 Rules for Labels and Reserved Namesnull D DOS Interrupt 21H and 33H Listingnull D.1 DOS 21H Interruptsnull D.2 Mouse Interrupts 33Hnull E BIOS Interruptsnull E.1 INT 10H Video Function Callsnull E.2 INT 11H - Equipment Determinationnull E.3 INT 12H -Memory Size Determinationnull E.4 INT 14H - Asynchronouos Communicationnull E.5 INT 15H - System Servicesnull E.6 INT 16H - Keyboardnull E.7 INT 17H - Printernull E.8 INT 1AH - Timer and Real-Timer Clock Servicesnull F ASCII Codesnull G I/O Address Mapsnull G.1 IBM PC AT I/O Address Mapnull G.2 IBM PS/2 I/O Address Mapnull G.3 ISA Standard I/O Address Portsnull H IBM PC/PS BIOS Data Areanull I Data Sheetsnull I.1 NS8250/NS16450 UART Chipnull I.2 Intel's 80486null I.3 Intel's Pentiumnull I.4 Intel Packagingnull Referencesnull Indexnull
Compartilhar