第1章 数的表示与运算 1
1.1 数制 1
1.1.1 数制的表示 1
1.1.2 数制之间的转换 2
1.2 二进制数的表示与运算 5
1.2.1 无符号二进制数的表示 5
1.2.2 无符号二进制数的运算 5
1.2.3 带符号二进制数的表示 6
1.2.4 带符号二进制数的运算 8
1.3 BCD码的表示与运算 9
1.3.1 BCD码的编码方法 9
1.3.2 8421 BCD码的加、减运算 10
1.4 字符的表示 12
习题1 13
第2章 8086微型计算机系统 14
2.1 概述 14
2.1.1 微型计算机系统的工作原理 14
2.1.2 微型计算机系统的硬件组成 14
2.2 8086微处理器的结构 16
2.2.1 8086的内部结构 16
2.2.2 8086的工作模式 18
2.3 8086微处理器的引脚特性 18
2.3.1 两种工作模式的公共引脚 19
2.3.2 最小模式下的引脚 21
2.3.3 最大模式下的引脚 21
2.4 8086微型计算机系统的总线时序 22
2.4.1 基本概念 22
2.4.2 最小模式下的总线周期时序 24
2.4.3 最大模式下的总线周期时序 27
2.5 8086微型计算机系统的硬件组成与组织 29
2.5.1 8086微型计算机系统的硬件组成 29
2.5.2 8086微型计算机系统的存储器组织 30
2.5.3 8086微型计算机系统的I/O组织 32
2.5.4 8086的寄存器结构 33
习题2 35
第3章 8086寻址方式与指令系统 37
3.1 概述 37
3.2 8086寻址方式 37
3.2.1 立即寻址 37
3.2.2 寄存器寻址 38
3.2.3 直接寻址 38
3.2.4 寄存器间接寻址 39
3.2.5 寄存器相对寻址 40
3.2.6 基址变址寻址 41
3.2.7 相对基址变址寻址 41
3.3 8086指令系统 42
3.3.1 数据传送指令 43
3.3.2 算术运算指令 49
3.3.3 位运算指令 55
3.3.4 串操作指令 59
3.3.5 控制转移指令 62
3.3.6 处理器控制指令 67
习题3 68
第4章 8086汇编语言程序设计 71
4.1 汇编语言基础知识 71
4.1.1 概述 71
4.1.2 汇编源程序的结构 71
4.1.3 汇编语言的语句 72
4.1.4 汇编语言的数据 74
4.1.5 汇编语言的操作符与表达式 75
4.2 汇编语言的伪指令 78
4.2.1 变量定义伪指令 78
4.2.2 符号定义伪指令 78
4.2.3 段定义伪指令 79
4.2.4 过程定义伪指令 80
4.2.5 模块定义和结束伪指令 81
4.2.6 其他伪指令 81
4.3 系统功能调用 82
4.3.1 DOS功能调用 82
4.3.2 BIOS功能调用 84
4.4 汇编语言程序设计 84
4.4.1 程序的质量标准 84
4.4.2 汇编语言程序设计的基本步骤 85
4.4.3 顺序结构程序设计 85
4.4.4 分支结构程序设计 86
4.4.5 循环结构程序设计 88
4.4.6 子程序设计 90
4.4.7 汇编语言程序设计举例 93
4.5 汇编语言程序的上机过程 98
4.5.1 上机环境 98
4.5.2 上机过程 99
4.5.3 运行调试 99
习题4 102
第5章 Proteus仿真平台的使用 104
5.1 Proteus简介 104
5.1.1 ProteusISIS编辑环境 104
5.1.2 Proteus ARES编辑环境 104
5.2 ProteusISIS基本使用 105
5.2.1 可视化界面及工具 105
5.2.2 基本操作 108
5.2.3 元件的查找与选取 109
5.2.4 元件的使用 113
5.2.5 连线 117
5.2.6 元件标签 119
5.2.7 器件标注 119
5.2.8 属性分配工具(PAT) 120
5.2.9 全局标注器 120
5.3 Proteus ISIS下8086的仿真 121
5.3.1 编辑电路原理图 121
5.3.2 设置外部代码编译器 121
5.3.3 添加源代码并选择编译器 124
5.3.4 仿真调试 125
习题5 126
第6章 存储器 127
6.1 半导体存储器的分类 127
6.1.1 RAM的分类 128
6.1.2 ROM的分类 128
6.2 半导体存储器的主要技术指标 129
6.3 典型存储器芯片介绍 129
6.4 存储器与系统的连接 133
6.4.1 存储器扩展 133
6.4.2 存储器地址译码方法 134
6.4.3 8086 CPU与存储器的连接 135
习题6 140
第7章 输入/输出接口 142
7.1 I/O接口概述 142
7.1.1 CPU与I/O设备之间交换的信息 142
7.1.2 I/O接口的主要功能 143
7.1.3 I/O接口的结构 143
7.1.4 输入/办输出的寻址方式 144
7.2 简单I/O接口芯片 145
7.3 CPU与外设之间的数据传送方式 145
7.3.1 程序控制方式 146
7.3.2 中断方式 148
7.3.3 直接存储器存取方式 148
7.3.4 通道控制方式和I/O处理器 149
习题7 149
第8章 可编程接口芯片 150
8.1 可编程接口芯片概述 150
8.2 可编程并行接口芯片8255A 150
8.2.1 8255A的内部结构及引脚功能 150
8.2.2 8255A的工作方式 152
8.2.3 8255A的编程 154
8.2.4 8255A的应用举例 155
8.3 可编程定时/计数器8253/8254 160
8.3.1 8253的内部结构及引脚功能 160
8.3.2 8253的工作方式 162
8.3.3 8253的初始化 165
8.3.4 8253的应用举例 167
8.4 可编程串行通信接口芯片8251A 171
8.4.1 串行数据传送方式 171
8.4.2 传输速率和传送距离 172
8.4.3 同步串行通信与异步串行通信 172
8.4.4 通用可编程串行通信接口芯片8251A 173
习题8 182
第9章 中断与中断管理 184
9.1 中断的概念 184
9.1.1 中断与中断源 184
9.1.2 中断系统的功能 184
9.1.3 简单的中断处理过程 185
9.1.4 中断源识别及优先权判断 188
9.2 8086的中断系统 190
9.2.1 8086的中断类型 190
9.2.2 中断向量和中断向量表 192
9.2.3 8086中的中断响应和处理过程 195
9.3 可编程中断控制器8259A 197
9.3.1 8259A的结构 197
9.3.2 8259A的引脚 199
9.3.3 8259A的中断处理过程 200
9.3.4 8259A的工作方式 201
9.3.5 8259A的编程与应用 203
9.4 中断程序设计 210
9.4.1 中断设计方法 210
9.4.2 中断程序设计举例 211
习题9 216
第10章 数模与模数转换及应用 217
10.1 物理信号到电信号的转换 217
10.1.1 概述 217
10.1.2 几种常见的传感器 217
10.2 数模转换及应用 218
10.2.1 数模转换器的基本原理 218
10.2.2 数模转换器的性能参数 221
10.2.3 8位D/A转换器DAC0832 222
10.3 模数转换及应用 225
10.3.1 模数转换器的基本原理 225
10.3.2 模数转换器的性能参数 226
10.3.3 8位A/D转换器ADC0808/0809 227
习题10 232
第11章 总线 233
11.1 总线的概念 233
11.2 系统总线 234
11.2.1 ISA总线 234
11.2.2 EISA总线 236
11.2.3 PCI总线 236
11.3 外部总线 238
11.3.1 RS-232C串行总线 238
11.3.2 USB总线 241
习题11 244
第12章 Proteus ISIS仿真基础实例 245
12.1 基本I/O应用——I/O译码 245
12.1.1 功能说明 245
12.1.2 Proteus电路设计 245
12.1.3 代码设计 248
12.1.4 仿真分析与思考 248
12.2 定时/计数器8253的应用——波形发生器 249
12.2.1 功能说明 249
12.2.2 Proteus电路设计 249
12.2.3 代码设计 251
12.2.4 仿真分析与思考 252
12.3 并行接口芯片8255A的应用——键盘与数码管 253
12.3.1 功能说明 253
12.3.2 Proteus电路设计 253
12.3.3 代码设计 254
12.3.4 仿真分析与思考 256
12.4 中断应用——8259A芯片的使用 257
12.4.1 功能说明 257
12.4.2 Proteus电路设计 257
12.4.3 代码设计 258
12.4.4 仿真分析与思考 259
12.5 模数转换———ADC0808的使用 260
12.5.1 功能说明 260
12.5.2 Proteus电路设计 260
12.5.3 代码设计 262
12.5.4 仿真分析与思考 264
12.6 数模转换——DAC0832的使用 264
12.6.1 功能说明 264
12.6.2 Proteus电路设计 264
12.6.3 代码设计 265
12.6.4 仿真分析与思考 266
12.7 串行通信——8251A的使用 266
12.7.1 功能说明 266
12.7.2 Proteus电路设计 266
12.7.3 代码设计 268
12.7.4 仿真分析与思考 269
第13章 ProteusISIS仿真综合实例 271
13.1 花式跑马灯 271
13.1.1 功能说明 271
13.1.2 Proteus电路设计 271
13.1.3 代码设计 272
13.1.4 仿真分析与思考 276
13.2 电子秒表 277
13.2.1 功能说明 277
13.2.2 Proteus电路设计 277
13.2.3 代码设计 278
13.2.4 仿真分析与思考 283
13.3 电压报警器 283
13.3.1 功能说明 283
13.3.2 Proteus电路设计 284
13.3.3 代码设计 285
13.3.4 仿真分析与思考 290
13.4 电机转向和转速的控制 290
13.4.1 功能说明 290
13.4.2 Proteus电路设计 291
13.4.3 代码设计 292
13.4.4 仿真分析与思考 293
13.5 电子琴及乐曲播放器 294
13.5.1 功能说明 294
13.5.2 Proteus电路设计 294
13.5.3 代码设计 295
13.5.4 仿真分析与思考 301
习题13 301
附录A VSM仿真的元件库 305
参考文献 307