第1章 微型计算机基础知识 1
1.1 微型计算机的发展及应用概述 1
1.1.1 微型计算机发展概况 2
1.1.2 微型计算机的应用 8
1.2 微型计算机的运算基础 10
1.2.1 无符号数的表示方法 10
1.2.2 有符号数的表示方法 17
1.2.3 数的定点表示与浮点表示 28
1.2.4 计算机中的二进制信息编码 31
1.3 微型计算机系统的组成 36
1.3.1 微型计算机系统的组成 36
1.3.2 微型计算机的分类 42
1.4 微处理器的内部结构及微机的工作过程 44
1.4.1 典型微处理器的内部结构 44
1.4.2 存储器的内部结构及读/写操作 46
1.4.3 微型计算机的工作过程 48
1.5 微型计算机的主要性能指标及典型配置 53
1.5.1 微型计算机的主要性能指标 53
1.5.2 微型计算机硬件系统的典型配置 55
习题 61
第2章 80X86微处理器 63
2.1 8086/8088微处理器的编程结构 63
2.1.1 8086/8088微处理器的内部编程结构 63
2.1.2 8086/8088的内部寄存器 66
2.2 8086/8088的引脚信号与工作模式 70
2.2.1 8086/8088的引脚信号 70
2.2.2 8086/8088的工作模式 72
2.3 8086/8088的总线操作时序 79
2.3.1 指令周期与总线周期 79
2.3.2 总线读操作时序 81
2.3.3 总线写操作时序 83
2.4 8086/8088存储器的组织与管理 85
2.4.1 8086/8088存储器的组织 85
2.4.2 存储器的分段管理 87
2.5 IBM PC/XT微型计算机系统的基本配置 89
2.5.1 8086/8088的协处理器 89
2.5.2 IBM PC/XT微型计算机系统的基本配置 96
2.6 从80286到Pentium系列微处理器的发展过程 98
2.6.1 Intel 80286微处理器的基本结构 98
2.6.2 Intel 80386微处理器的基本结构 101
2.6.3 Intel 80486微处理器的基本结构 105
2.6.4 Intel Pentium微处理器 108
2.6.5 Intel Pentium Pro微处理器 111
2.6.6 Intel Pentium MMX微处理器 112
2.6.7 Intel Pentium Ⅱ微处理器 112
2.6.8 Intel Pentium Ⅲ微处理器 114
2.6.9 PentiumⅣ(PⅣ或P4)微处理器简介 116
2.6.10 新一代微处理器——Itanitim(安腾) 117
习题 118
第3章 微型计算机指令系统 120
3.1 指令的构成与操作数的类型 120
3.1.1 指令构成 120
3.1.2 8086/8088的通用指令格式 121
3.1.3 操作数的类型 123
3.2 寻址方式 126
3.2.1 立即寻址(Immediate Addressing) 126
3.2.2 寄存器寻址(Register Addressing) 127
3.2.3 直接寻址(Direct Addressing) 127
3.2.4 寄存器间接寻址(Register Indirect Addressing) 129
3.2.5 变址寻址(Indexd Addressing) 130
3.2.6 基址寻址(Based Addressing) 131
3.2.7 基址、变址寻址方式(Based Indexed Addressing) 132
3.2.8 隐含寻址 133
3.3 8086/8088指令系统 134
3.3.1 数据传送指令(Date Transfer) 134
3.3.2 算术运算指令(Arithmetic) 147
3.3.3 逻辑运算与移位指令 166
3.3.4 串操作指令(String Manipulation) 175
3.3.5 控制转移指令(Control Transfer) 182
3.3.6 中断指令 197
3.3.7 处理器控制指令 199
3.4 80286、80386扩充与增加的指令 202
3.4.1 80286扩充与增加的指令 202
3.4.2 80386扩充与增加的指令 207
3.4.3 80486扩充的指令 212
3.4.4 Pentium扩充的指令 213
习题 213
第4章 汇编语言程序设计 219
4.1 概述 219
4.1.1 机器语言(Machine Language) 219
4.1.2 汇编语言(Assembly Language) 220
4.1.3 高级语言(High level Language) 221
4.1.4 宏汇编程序及上机过程简介 221
4.2 汇编语言源程序的格式与基本语法 222
4.2.1 汇编语言源程序的分段结构 223
4.2.2 汇编语言语句类型与格式 225
4.3 伪操作命令与宏指令 237
4.3.1 数据定义与存储器分配伪指令 238
4.3.2 符号定义伪指令 241
4.3.3 程序模块定义伪指令 243
4.3.4 过程定义伪指令PROC/ENDP 250
4.3.5 宏指令语句 252
4.3.6 模块连接伪指令 255
4.3.7 列表伪指令 256
4.4 DOS与BIOS的调用 257
4.4.1 概述 257
4.4.2 DOS系统功能调用 258
4.4.3 ROMBIOS中断调用 262
4.5 汇编语言程序设计 265
4.5.1 汇编语言源程序的框架结构 266
4.5.2 程序设计基本步骤 270
4.5.3 汇编语言程序设计应注意的问题 270
4.5.4 程序的基本结构与基本程序设计 271
4.5.5 高级语言与汇编语言的混合编程 299
习题 305
第5章 存储器及其与CPU的接口 311
5.1 半导体存储器的分类 311
5.1.1 半导体存储器的分类 312
5.1.2 半导体存储器的主要技术指标 316
5.2 随机读/写存储器 317
5.2.1 静态读写存储器SRAM 317
5.2.2 动态读写存储器DRAM 325
5.3 只读存储器ROM 333
5.3.1 掩膜ROM 333
5.3.2 可擦除可编程只读存储器EPROM 334
5.3.3 电可擦除可编程只读存储器EEPROM(E2PROM) 341
5.4 存储器与CPU接口的基本技术 350
5.4.1 接口连接应注意的问题 350
5.4.2 CPU与存储器的连接 353
5.5 存储器的管理 371
5.5.1 IBM PC/XT/AT存储空间的分配 371
5.5.2 扩展存储器的管理 372
5.5.3 存储器的管理 376
5.6 高速缓冲存储器 378
5.6.1 工作原理 379
5.6.2 高速缓存与主存的存取一致性 379
5.7 外部存储器简介 381
5.7.1 磁盘 381
5.7.2 光盘 383
5.7.3 存储卡 385
习题 386
第6章 输入输出接口及中断技术 388
6.1 输入输出接口概述 388
6.1.1 I/O接口电路的必要性及功能 388
6.1.2 I/O的信息组成及接口模型 390
6.1.3 I/O端口的编址方式及端口地址 392
6.2 PC系列微机I/O端口和I/O端口地址译码 394
6.2.1 PC系列微机I/O端口的地址分配 394
6.2.2 I/O端口地址译码 396
6.3 CPU与外设之间数据传送的控制方式 401
6.3.1 简单输入/输出接口芯片 401
6.3.2 程序直接控制传送方式 402
6.3.3 程序中断传送方式 409
6.3.4 直接存储器存取方式DMA 412
6.4 中断技术 414
6.4.1 中断的基本概念 414
6.4.2 8086/8088中断系统和中断处理 421
6.4.3 中断向量和中断向量表 429
6.4.4 中断响应的过程 432
6.4.5 中断处理程序编制的原则和基本结构 435
6.5 可编程中断控制器8259A 443
6.5.1 8259A中断控制器的编程结构 444
6.5.2 引脚功能 446
6.5.3 中断优先级的管理 448
6.5.4 8259A的寄存器编程 452
6.5.5 8259A的级联 462
习题 464
第7章 总线技术 465
7.1 概述 465
7.1.1 总线标准 466
7.1.2 总线的分类 468
7.1.3 总线数据传输通信协定 470
7.2 IBM PC/XT和PC/AT的系统总线 475
7.2.1 IBM PC/XT总线 475
7.2.2 ISA总线(PC/AT总线,工业总线标准) 478
7.3 PC机的其他系统总线 484
7.3.1 MCA总线 484
7.3.2 EISA总线 485
7.3.3 VL总线(VESA局部总线) 485
7.3.4 PCI局部总线 486
7.3.5 STD总线 492
7.3.6 PC/104总线 493
7.4 通信总线 494
7.4.1 IEEE 488总线 495
7.4.2 VXI总线 499
7.4.3 IDE总线 501
7.4.4 SCSI总线 503
7.4.5 RS-232C串行通信总线 507
7.4.6 USB总线与IEEE 1394 507
7.4.7 现场总线简介(Fieldbus) 514
习题 518
第8章 可编程并行接口芯片及其应用 520
8.1 可编程接口芯片的基本概念 520
8.1.1 可编程接口芯片的基本概念 520
8.1.2 接口通信方式 521
8.2 计数/定时器8253/8254 521
8.2.1 可编程定时器/计数器8253功能概述 522
8.2.2 8253的内部结构和引脚功能 523
8.2.3 8253的编程命令 528
8.2.4 8253的工作方式 531
8.2.5 8254计数器/定时器 539
8.2.6 8253的应用 541
8.3 可编程并行接口8255A 548
8.3.1 8255A基本功能概述 548
8.3.2 8255A内部结构及引脚信号 549
8.3.3 8255A的控制字 552
8.3.4 8255A的三种工作方式及操作时序 555
8.3.5 8255A应用举例 562
8.4 DMA技术及可编程DMA控制器8237 572
8.4.1 DMA的工作过程 572
8.4.2 8237A DMA控制器 574
8.4.3 8237A在IBM PC系统机中的应用 590
8.4.4 PC系列微型机的DMA通道构成及用户接口 599
习题 603
第9章 串行通信接口及总线标准 607
9.1 串行通信的基本概念 607
9.1.1 并行通信与串行通信 607
9.1.2 两种串行通信方式 608
9.1.3 串行通信的连接方式 614
9.1.4 调制解调器MODEM 614
9.1.5 串行通信的校验方法 616
9.1.6 串行通信的实现方法 620
9.2 串行通信的物理标准 621
9.2.1 EIA RS-232C串行接口标准 622
9.2.2 EIA RS-423A总线、RS-422A总线、RS-485A总线 627
9.3 可编程串行通信接口芯片INS8250 632
9.3.1 INS8250主要功能简介 633
9.3.2 8250的内部结构及工作原理 634
9.3.3 8250的引脚功能 637
9.3.4 8250内部寄存器和控制字及状态字 640
9.3.5 8250的初始化编程 649
9.3.6 8250应用举例 653
9.4 PC系列微机的异步串行通信适配器及其编程 657
9.4.1 异步通信适配器的硬件逻辑 657
9.4.2 PC系列微机串行接口的编程 659
习题 668
第10章 模拟接口技术 670
10.1 模拟通道概述 670
10.1.1 模拟量输入通道的组成 671
10.1.2 模拟量输出通道的组成 672
10.2 数/模(D/A)转换器 673
10.2.1 D/A转换器的工作原理 673
10.2.2 D/A转换器的主要技术指标 677
10.2.3 典型的D/A转换器 679
10.2.4 D/A转换器与CPU的接口 684
10.3 模/数(A/D)转换器 688
10.3.1 A/D转换器的工作原理 688
10.3.2 A/D转换器的主要技术指标 691
10.3.3 典型的A/D传换器 692
10.3.4 A/D转换器与CPU的接口 699
10.4 多路转换器和采样保持器 715
10.4.1 几种常用的多路模拟开关器件 715
10.4.2 多路模拟开关的主要技术参数 717
10.4.3 采样保持器 718
10.5 数据采集系统举例 721
10.5.1 系统组成 721
10.5.2 工作原理与过程 723
习题 725
第11章 常用外设和人机交互接口 726
11.1 信息显示 726
11.1.1 LED数码显示器及其接口 726
11.1.2 CRT显示器 732
11.2 打印机接口 738
11.2.1 串行接口总线 738
11.2.2 并行接口总线 738
11.2.3 打印机适配器 740
11.3 常用输入设备接口 741
11.3.1 键盘 741
11.3.2 鼠标 752
11.3.3 图形板和画笔 754
11.4 光电隔离接口 755
11.4.1 光电隔离接口 755
11.4.2 光电隔离接口应用举例 757
习题 759
附录 761
附录Ⅰ MASM伪操作命令表 761
附录ⅡA 8086/8088指令系统主要符号说明 764
附录ⅡB 8086/8088指令系统 765
附录ⅢA 常用DOS功能调用(INT21H)一览表 771
附录ⅢB ROM-BIOS功能调用表 774
附录ⅢC IBM PC键盘扫描码 780
附录ⅢD 字符扩充码 781
附录ⅢE 国标逻辑电路符号和国际流行逻辑电路符号对照表 781
中英文对照索引 782
参考文献 793