第1章 微型计算机概述 1
1.1 微型计算机概念 1
1.2 微处理器的产生和发展 2
1.3 计算机系统组成 4
1.3.1 硬件系统 5
1.3.2 软件 6
1.4 系统总线 8
1.4.1 概述 8
1.4.2 常用的微机系统总线技术 9
小结 10
习题 11
第2章 80x86微处理器 12
2.1 8086/8088微处理器 12
2.1.1 内部结构 12
2.1.2 寄存器组 15
2.1.3 引脚信号及功能 18
2.1.4 工作模式 22
2.1.5 总线操作和时序 25
2.2 32位微处理器 32
2.2.1 内部结构 32
2.2.2 寄存器组 35
2.2.3 引脚信号及功能 39
2.2.4 工作模式 43
2.2.5 总线操作 44
2.3 Pentium微处理器 44
2.3.1 Pentium微处理器的主要特点 45
2.3.2 Pentium的发展 46
2.4 80x86存储器组织 47
2.4.1 8086/8088的存储器组织 47
2.4.2 32位微处理器存储器系统简介 50
小结 51
习题 51
第3章 80x86指令系统和寻址方式 53
3.1 8086指令系统概述 53
3.1.1 数据类型 53
3.1.2 80x86指令的基本组成 55
3.2 8086/8088的寻址方式和指令系统 56
3.2.1 8086/8088的寻址方式 56
3.2.2 8086/8088的常用指令 61
3.3 80386的寻址方式和指令系统 78
3.3.1 80386的寻址方式 78
3.3.2 80386指令系统 80
3.4 80486/Pentium微处理器新增指令 90
3.4.1 80486引入的有关指令 90
3.4.2 Pentium引入的有关指令 91
小结 92
习题 93
第4章 80x86汇编语言程序设计 97
4.1 MASM宏汇编语句结构及开发过程 98
4.1.1 汇编语言程序的语句类型和格式 98
4.1.2 汇编语言的程序格式 99
4.1.3 汇编语言程序的开发过程 101
4.2 MASM汇编语言表达式和运算符 107
4.2.1 常量、运算符及表达式 107
4.2.2 变量及其属性 111
4.3 程序段的定义和属性 119
4.3.1 DOS的程序结构 119
4.3.2 简化段定义的格式及其伪指令 120
4.3.3 完整段定义的格式及其伪指令 125
4.4 复杂数据结构 130
4.4.1 结构 130
4.4.2 记录 132
4.5 宏汇编 133
4.5.1 宏的定义和调用 134
4.5.2 宏的参数 136
4.5.3 与宏有关的伪指令 138
4.6 常用的系统功能调用 140
4.6.1 DOS的系统调用 140
4.6.2 BIOS中断调用及实现 144
4.6.3 Windows系统功能调用 147
4.7 汇编语言顺序程序设计 149
4.8 汇编语言分支程序设计 150
4.8.1 无条件转移指令和条件转移指令 150
4.8.2 分支结构程序设计实例 153
4.9 汇编语言循环程序设计 157
4.9.1 循环指令 157
4.9.2 循环程序设计实例 158
4.10 串处理程序设计 162
4.10.1 8086/8088串操作指令 162
4.10.2 80386位串操作指令 165
4.10.3 串操作程序设计实例 165
4.11 子程序设计 167
4.11.1 子程序的定义与调用 167
4.11.2 子程序的参数传递 173
4.11.3 子程序的嵌套、递归与重入 177
4.11.4 子程序的应用 179
4.12 高级汇编语言程序设计 185
4.12.1 条件控制伪指令 185
4.12.2 循环控制伪指令 187
4.12.3 过程声明和过程调用伪指令 190
4.13 汇编语言与C语言混合编程 193
4.13.1 C语言程序内嵌汇编指令 193
4.13.2 汇编语言与C语言模块连接 196
小结 201
习题 202
第5章 存储器技术 209
5.1 存储器概述 209
5.1.1 存储器的发展及分类 209
5.1.2 存储器主要技术指标 212
5.1.3 存储器的基本结构框架 213
5.1.4 存储系统的层次结构 213
5.2 半导体随机存取存储器 215
5.2.1 SRAM存储器 215
5.2.2 DRAM存储器 217
5.2.3 只读存储器 220
5.2.4 新型存储器芯片 222
5.2.5 主存容量的扩展 225
5.3 高速缓冲存储技术 230
5.3.1 Cache的基本原理 230
5.3.2 Cache的管理 231
5.4 虚拟存储技术 233
小结 235
习题 236
第6章 输入输出接口及数据传输控制方式 237
6.1 接口概述 237
6.1.1 接口的功能 237
6.1.2 I/O端口及其编址方式 239
6.1.3 I/O端口地址译码 239
6.1.4 I/O操作指令 241
6.2 CPU与外设数据的传输控制方式 242
6.2.1 程序控制方式 242
6.2.2 中断控制方式 245
6.2.3 DMA方式 246
6.2.4 数据传送控制方式的发展 246
小结 247
习题 247
第7章 串并行接口技术 248
7.1 定时/计数器8253/8254 248
7.1.1 8253/8254的内部结构和引脚 248
7.1.2 8253/8254的工作方式 250
7.1.3 8253/8254的编程 254
7.1.4 8253/8254的应用实例 257
7.2 并行通信接口8255A 259
7.2.1 8255A的内部结构和引脚 259
7.2.2 8255A的工作方式 260
7.2.3 8255A的编程 264
7.2.4 8255A的应用实例 266
7.3 串行通信基础 269
7.3.1 串行通信基本概念 270
7.3.2 串行通信接口标准 271
7.4 串行通信芯片8251A 275
7.4.1 8251A的内部结构和引脚 275
7.4.2 8251A的工作方式 278
7.4.3 8251A的编程 279
7.4.4 8251A的应用实例 284
小结 285
习题 286
第8章 中断和DMA技术 288
8.1 80x86中断系统 288
8.1.1 中断操作和中断系统 288
8.1.2 中断调用与返回指令 289
8.1.3 8086中断系统 290
8.1.4 80486的中断 293
8.2 中断控制器8259A 294
8.2.1 8259A的内部结构和引脚 295
8.2.2 8259A的中断过程 297
8.2.3 8259A的工作方式 298
8.2.4 8259A的初始化和控制命令字 301
8.2.5 8259A的应用实例 308
8.3 DMA控制器8237A 310
8.3.1 8237A的结构和外部引脚 311
8.3.2 8237A的工作原理 314
8.3.3 8237A的内部寄存器和命令 316
8.3.4 8237A的编程和应用 321
小结 322
习题 323
第9章 模拟接口技术 325
9.1 模拟输入输出系统 325
9.1.1 微机与控制系统接口 325
9.1.2 模拟输入通道 326
9.1.3 模拟输出通道 327
9.2 数/模转换芯片及接口 327
9.2.1 数/模转换原理 327
9.2.2 8位数/模转换器DAC0832 330
9.2.3 12位数/模转换器AD567 333
9.3 模/数转换芯片及接口 336
9.3.1 模/数转换原理 336
9.3.2 8位模/数转换器ADC0809 341
9.3.3 12位模/数转换器AD574 343
9.4 A/D、D/A器件的选择 346
小结 348
习题 349
第10章 高速串行总线 350
10.1 USB简介 350
10.2 USB体系结构 353
10.3 USB通信协议 357
10.3.1 通信模型 357
10.3.2 数据格式 358
10.3.3 事务处理 360
10.3.4 数据传输模式 362
10.4 PC的USB应用及开发 363
10.4.1 PDIUSBD12芯片特点 365
10.4.2 PDIUSBD12芯片引脚 366
10.4.3 PDIUSBD12的典型连接 367
10.4.4 固件程序设计 367
10.4.5 驱动程序设计 372
10.4.6 应用程序设计 372
小结 374
习题 374
参考文献 375