第1章 绪论 1
1.1 微型计算机概述 1
1.2 微型计算机的组成和指令流程 3
1.2.1 微型计算机的硬件组成 3
1.2.2 微型计算机的指令系统 5
1.2.3 微型计算机的指令流程 6
1.3 计算机中数的表示方法与运算基础 7
1.3.1 计算机中数的表示方法 7
1.3.2 计算机中的编码 11
1.3.3 计算机中的运算 13
习题与思考题一 22
第2章 8086系统结构 23
2.1 8086 CPU结构 23
2.1.1 8086 CPU的内部结构 24
2.1.2 寄存器结构 26
2.2 8086 CPU的引脚功能 29
2.2.1 8086/8088 CPU在最小模式中的引脚定义 30
2.2.2 8086 CPU在最大模式中的引脚定义 33
2.3 8086存储器组织 34
2.3.1 存储器地址的分段 34
2.3.2 8086存储器的分体结构 35
2.3.3 堆栈的概念 37
2.4 8086系统配置 39
2.4.1 最小模式系统 39
2.4.2 最大模式系统 43
2.5 8086 CPU时序 47
2.5.1 系统的复位和启动 48
2.5.2 最小模式下的总线操作 49
2.5.3 最小模式下的总线保持 51
2.6 Intel 80386微处理器 52
2.7 Pentium系列微处理器 53
2.7.1 Pentium微处理器 53
2.7.2 Pentium 4微处理器 55
2.7.3 若干新技术 55
习题与思考题二 58
第3章 8086寻址方式和指令系统 59
3.1 概述 59
3.1.1 指令的构成 59
3.1.2 8086指令的基本格式 60
3.2 8086的数据类型 60
3.2.1 基本数据类型 60
3.2.2 数据与编码 61
3.3 8086 CPU的寻址方式 61
3.3.1 立即数寻址 62
3.3.2 寄存器寻址 63
3.3.3 存储器寻址 63
3.3.4 I/O端口寻址 68
3.4 8086CPU指令系统 68
3.4.1 数据传送类指令 69
3.4.2 算术运算类指令 77
3.4.3 逻辑运算与移位指令 87
3.4.4 串操作类指令 93
3.4.5 控制转移类指令 98
3.4.6 处理器控制指令 107
习题与思考题三 109
第4章 汇编语言程序设计 113
4.1 汇编语言和汇编语言源程序 113
4.1.1 低级语言 113
4.1.2 高级语言 113
4.1.3 汇编语言源程序 114
4.1.4 汇编语言程序的汇编步骤 115
4.2 汇编语言的基本语法 115
4.2.1 汇编语言的语句类型 115
4.2.2 常量、标识符和表达式 116
4.2.3 运算符 118
4.3 伪指令 121
4.3.1 符号定义语句 121
4.3.2 数据定义语句 122
4.3.3 段定义语句 124
4.3.4 过程定义语句 125
4.3.5 源程序结束语句 126
4.4 宏指令 126
4.5 汇编语言程序设计 128
4.5.1 汇编语言程序设计步骤 128
4.5.2 顺序程序设计 130
4.5.3 分支程序设计 130
4.5.4 循环程序设计 132
4.5.5 子程序设计 136
4.5.6 常用程序设计 141
4.5.7 DOS系统功能调用和BIOS中断调用 146
4.5.8 MASM与高级语言的接口 148
习题与思考题四 148
第5章 半导体存储器 153
5.1 存储器概述 153
5.1.1 存储器分类 153
5.1.2 存储器的性能指标 154
5.1.3 计算机的多级存储管理 156
5.2 SRAM存储器 156
5.2.1 SRAM基本存储元 156
5.2.2 SRAM存储器的逻辑结构 157
5.2.3 SRAM读写周期波形 158
5.3 DRAM存储器 160
5.3.1 DRAM基本存储元 160
5.3.2 DRAM的刷新 161
5.4 只读存储器和闪速存储器 163
5.4.1 只读存储器 163
5.4.2 电擦除可编程只读存储器(EEPROM) 165
5.4.3 闪速存储器 166
5.5 存储器与CPU的连接 168
5.5.1 存储器与CPU连接时应注意的问题 168
5.5.2 存储器芯片的扩展 170
5.5.3 CPU与存储器的连接 171
5.5.4 动态RAM与CPU的连接 175
5.5.5 CPU与存储器连接的应用实例 177
习题与思考题五 180
第6章 输入/输出接口与中断技术 182
6.1 输入/输出接口概述 182
6.1.1 I/O接口的基本结构和传送信息 182
6.1.2 I/O接口的基本功能 183
6.1.3 I/O接口的编址方式 184
6.2 输入/输出数据的传送方式 185
6.2.1 无条件传送方式 185
6.2.2 程序查询传送方式 186
6.2.3 中断传送方式 189
6.2.4 DMA传送方式 190
6.3 中断技术 191
6.3.1 中断概述 191
6.3.2 中断源 191
6.3.3 中断系统的功能 192
6.3.4 中断过程 193
6.3.5 中断优先权 195
6.4 8086CPU实模式下的中断系统 196
6.4.1 中断类型 196
6.4.2 中断向量与中断向量表 198
6.4.3 中断响应过程与时序 201
6.5 中断控制器8259A 202
6.5.1 8259A的结构 202
6.5.2 8259A的工作方式 205
6.5.3 8259A的工作过程 209
6.5.4 8259A的编程 209
6.5.5 8259A在系统中的应用举例 214
习题与思考题六 216
第7章 DMA控制器和定时器/计数器 218
7.1 DMA控制器8237 218
7.1.1 概述 218
7.1.2 8237的结构 219
7.1.3 8237的内部寄存器 221
7.1.4 8237的软命令 224
7.1.5 8237的工作时序 225
7.1.6 8237的编程和举例 226
7.2 可编程定时器/计数器8253 227
7.2.1 8253的结构 228
7.2.2 8253的工作方式 229
7.2.3 8253的编程 232
7.2.4 8253的应用 235
习题与思考题七 237
第8章 并行通信接口 239
8.1 并行接口概述 239
8.2 可编程并行接口芯片8255A 240
8.2.1 8255A的结构 240
8.2.2 8255A的工作方式 241
8.2.3 8255A的编程 245
8.2.4 8255A的应用 247
习题与思考题八 249
第9章 串行通信接口 251
9.1 串行通信概述 251
9.1.1 并行通信和串行通信 251
9.1.2 串行通信的传输方式 252
9.1.3 串行通信的通信方式 252
9.1.4 串行通信的错误校验 255
9.2 串行通信接口标准 256
9.2.1 EIA RS-232C标准 256
9.2.2 RS-449/423A/422A标准 258
9.2.3 RS-485标准 259
9.3 可编程串行通信接口8251A 260
9.3.1 基本性能 260
9.3.2 8251A的结构 260
9.3.3 8251A的编程方法 262
9.3.4 8251A的应用 264
习题与思考题九 266
第10章 D/A与A/D转换及接口 267
10.1 概述 267
10.2 D/A转换器接口 267
10.2.1 D/A转换器的工作原理 267
10.2.2 D/A转换器的主要技术指标 269
10.2.3 D/A转换器的芯片 269
10.2.4 D/A转换器与微处理器接口要考虑的问题 271
10.2.5 D/A转换器与微处理器的接口 272
10.3 A/D转换器接口 273
10.3.1 采样与量化 273
10.3.2 A/D转换器的工作原理 274
10.3.3 A/D转换器的主要技术指标 276
10.3.4 A/D转换器的芯片 276
10.3.5 A/D转换器与微处理器接口要考虑的问题 279
10.3.6 A/D转换器与微处理器的接口 279
习题与思考题十 281
参考文献 282