第1章 微型计算机概述 1
1.1 微型计算机的概念 1
1.2 微处理器的产生和发展 2
1.3 计算机系统的组成 4
1.3.1 微型计算机的硬件 4
1.3.2 微型计算机的软件 6
1.4 接口基础 8
1.4.1 接口概述 8
1.4.2 CPU与外设之间所传送的信息类型 9
1.4.3 接口的功能 9
1.4.4 I/O端口及其编址方式 9
1.4.5 I/O端口地址译码 10
1.5 CPU与外设数据的传输控制方式 12
1.5.1 直接程序控制方式 12
1.5.2 中断传送方式 14
1.5.3 DMA传送方式 15
1.5.4 数据传送控制方式的发展 15
1.6 系统总线 16
1.6.1 概述 16
1.6.2 常用的几种微机系统总线技术 16
小结 17
习题 18
第2章 80x86微处理器 19
2.1 8086/8088微处理器 19
2.1.1 内部结构 20
2.1.2 寄存器组 22
2.1.3 引脚信号及功能 25
2.1.4 工作模式 28
2.1.5 总线操作和时序 31
2.2 32位微处理器 37
2.2.1 内部结构 37
2.2.2 寄存器组 40
2.2.3 引脚信号及功能 44
2.2.4 工作模式 47
2.2.5 总线操作 48
2.3 80x86中断系统 49
2.3.1 中断操作和中断系统 49
2.3.2 8086中断系统 50
2.3.3 80486的中断 53
2.4 Pentium的主要特点 54
小结 55
习题 56
第3章 80x86指令系统和寻址方式 57
3.1 8086指令系统概述 57
3.2 8086的寻址方式和指令系统 60
3.2.1 8086的寻址方式 60
3.2.2 8086的指令系统 65
3.3 80386的寻址方式和指令系统 91
3.3.1 80386的寻址方式 91
3.3.2 80386指令系统 92
3.4 80486/Pentium微处理器新增指令 103
3.4.1 80486引入的有关指令 103
3.4.2 Pentium引入的有关指令 104
小结 104
习题 105
第4章 80x86汇编语言程序设计 110
4.1 MASM宏汇编语句结构以及开发过程 110
4.1.1 汇编语言程序的语句类型和格式 111
4.1.2 汇编语言的程序格式 112
4.1.3 汇编语言程序的开发过程 114
4.2 MASM汇编语言表达式、运算符 119
4.2.1 常量、运算符及表达式 119
4.2.2 变量及其属性 123
4.3 程序段的定义和属性 130
4.3.1 DOS的程序结构 130
4.3.2 简化段定义的格式 132
4.3.3 完整段定义的格式 136
4.4 复杂数据结构 141
4.4.1 结构 141
4.4.2 记录 143
4.5 宏汇编 144
4.5.1 宏的定义和调用 144
4.5.2 宏的参数 147
4.5.3 与宏有关的伪指令 149
4.5.4 宏与子程序 150
4.6 基本汇编语言程序设计 151
4.6.1 顺序程序设计 151
4.6.2 分支程序设计 152
4.6.3 循环程序设计 156
4.7 子程序设计 160
4.7.1 过程定义伪指令 160
4.7.2 子程序的参数传递 163
4.7.3 子程序的嵌套、递归与重入 167
4.7.4 子程序的应用 169
4.8 高级汇编语言程序设计 174
4.8.1 条件控制伪指令 174
4.8.2 循环控制伪指令 176
4.8.3 过程声明和过程调用伪指令 179
小结 182
习题 182
第5章 软件接口技术 188
5.1 软件接口概述 188
5.2 接口软件及层次结构 189
5.3 DOS系统中的接口调用 191
5.3.1 BIOS中断调用及实现 192
5.3.2 DOS的系统调用 195
5.4 Windows系统中的接口调用 198
5.4.1 Windows的体系结构 198
5.4.2 Windows系统中用户态到内核态的转换过程 199
5.4.3 Windows的系统调用 200
5.4.4 Windows的功能调用函数API的分类及特征 202
5.4.5 Windows的功能调用函数API应用举例 204
5.5 Linux下的接口调用 209
5.5.1 Linux操作系统简介 209
5.5.2 Linux系统调用的实现及过程 212
5.5.3 Linux的系统调用函数和函数调用 214
小结 216
习题 216
第6章 存储器技术 217
6.1 存储器概述 217
6.1.1 存储器的发展及分类 217
6.1.2 存储器主要技术指标 219
6.1.3 存储器的基本结构框架 220
6.1.4 存储系统的层次结构 221
6.2 半导体随机存取存储器 222
6.2.1 SRAM存储器 223
6.2.2 DRAM存储器 225
6.2.3 只读存储器ROM 227
6.2.4 新型存储器芯片 229
6.2.5 主存容量的扩展 233
6.3 高速缓冲存储技术 237
6.3.1 cache的基本原理 237
6.3.2 cache的管理 238
6.4 80x86存储器组织 240
6.4.1 8086/8088的存储器组织 240
6.4.2 32位微处理器存储器系统简介 242
小结 243
习题 243
第7章 串并行接口技术 245
7.1 定时器/计数器8253/8254 245
7.1.1 8253/8254的内部结构和引脚 245
7.1.2 8253/8254的工作方式 247
7.1.3 8253/8254的编程 250
7.1.4 8253/8254的应用实例 253
7.2 并行通信接口8255A 255
7.2.1 8255A的内部结构和引脚 255
7.2.2 8255A的工作方式 256
7.2.3 8255A的编程 260
7.2.4 8255A的应用实例 261
7.3 串行通信基础 265
7.3.1 串行通信基本概念 265
7.3.2 串行通信接口标准 266
7.4 串行通信芯片8251A 270
7.4.1 8251A的内部结构和引脚 270
7.4.2 8251A的工作方式 273
7.4.3 8251A的编程 274
7.4.4 8251A的应用实例 278
小结 280
习题 280
第8章 中断和DMA技术 282
8.1 中断控制器8259A 282
8.1.1 8259A的内部结构和引脚 282
8.1.2 8259A的中断过程 284
8.1.3 8259A的工作方式 285
8.1.4 8259A的初始化和控制命令字 288
8.1.5 8259A的应用实例 294
8.2 DMA控制器8237A 297
8.2.1 8237A的结构和外部引脚 298
8.2.2 8237A的工作原理 300
8.2.3 8237A的内部寄存器和命令 302
8.2.4 8237A的编程和应用 306
小结 308
习题 308
第9章 模/数和数/模转换 310
9.1 模拟输入输出系统 310
9.1.1 微机与控制系统接口 310
9.1.2 模拟输入通道 311
9.1.3 模拟输出通道 312
9.2 数/模转换芯片及接口 312
9.2.1 数/模转换原理 312
9.2.2 8位数/模转换器DAC0832 315
9.2.3 12位数/模转换器AD567 318
9.3 模/数转换芯片及接口 320
9.3.1 模/数转换原理 320
9.3.2 8位模/数转换器ADC0809 324
9.3.3 12位模/数转换器AD574 326
9.4 A/D、D/A器件的选择 330
小结 331
习题 331
第10章 高速串行总线 333
10.1 高速串行接口简介 333
10.2 USB体系结构 335
10.2.1 USB拓扑结构 335
10.2.2 USB的物理接口 339
10.3 USB通信协议 341
10.3.1 通信模型 341
10.3.2 数据格式 343
10.3.3 事务处理 345
10.3.4 数据传输模式 346
10.4 PC的USB应用及开发 347
10.4.1 PDIUSBD12芯片的特点 348
10.4.2 PDIUSBD12芯片引脚 350
10.4.3 PDIUSBD12的典型连接 351
10.4.4 固件程序设计 352
10.4.5 驱动程序设计 356
10.4.6 应用程序设计 356
10.5 USB 2.0简介 358
10.6 IEEE 1394体系结构 358
10.6.1 IEEE 1394的拓扑结构 358
10.6.2 IEEE 1394的物理接口 360
10.7 IEEE 1394通信协议 361
小结 364
习题 365
附录A ASCII码字符表及控制符号的定义 366
附录B DOS系统功能调用一览表 367
附录C BIOS中断 372
参考文献 377