第1篇 计算机的基本原理 2
第1章 概述 2
1.1 计算机的发展 2
1.1.1 计算机发展简史 2
1.1.2 微型计算机的发展及两大分支 3
1.1.3 单片机与微型计算机的主要异同点 3
1.1.4 计算机的主要技术指标 5
1.2 嵌入式系统概述 5
1.2.1 嵌入式系统的定义与特点 5
1.2.2 嵌入式系统的组成 6
1.3 80C51系列8位单片机简介 8
1.3.1 80C51系列单片机的发展 8
1.3.2 AT89系列单片机的特点及分类 8
1.4 微型计算机系统概述 9
1.4.1 微型计算机系统的基本组成 9
1.4.2 微型计算机的分类 12
1.4.3 微型计算机系统的发展 13
思考与练习 14
第2章 计算机基础知识 15
2.1 计算机中的数制与编码 15
2.1.1 数制 15
2.1.2 计算机中数的表示及运算 16
2.1.3 二进制编码 18
2.2 计算机的基本组成电路 20
2.2.1 常用简单逻辑电路 20
2.2.2 触发器 20
2.2.3 寄存器 21
2.3 存储器概述 23
2.3.1 存储器的分类 24
2.3.2 半导体存储器的分类 24
2.3.3 存储器中的常用名词术语及主要指标 25
2.3.4 基本存储单元电路 26
2.3.5 存储单元和存储单元地址 27
2.3.6 存储器的寻址原理 28
思考与练习 29
第3章 微型计算机基本工作原理 31
3.1 时序及时钟电路 31
3.1.1 时序及有关概念 31
3.1.2 振荡器和时钟电路 32
3.2 指令与程序概述 32
3.2.1 指令系统简介 32
3.2.2 程序设计语言 33
3.3 CPU的工作原理 34
3.3.1 控制器 34
3.3.2 运算器 35
3.4 微型计算机基本工作原理 36
3.4.1 计算机执行程序过程 36
3.4.2 程序执行过程举例 37
3.5 I/O接口电路 38
3.5.1 接口电路的功能 38
3.5.2 接口电路的组成 39
3.5.3 I/O接口的编址 40
3.5.4 I/O接口分类 41
3.6 并行接口与串行接口 42
3.6.1 并行接口 42
3.6.2 串行接口 42
思考与练习 45
第4章 计算机的中断 46
4.1 概述 46
4.1.1 中断的概念 46
4.1.2 引进中断技术的优点 46
4.1.3 中断源 47
4.1.4 中断系统的功能 47
4.2 中断处理过程 48
4.2.1 中断响应 49
4.2.2 中断处理 49
4.2.3 中断返回 50
4.2.4 中断程序的一般设计方法 50
思考与练习 52
第2篇 单片机原理及应用 54
第5章 单片机结构及原理 54
5.1 单片机结构 54
5.1.1 标准型单片机组成及结构 54
5.1.2 引脚定义及功能 56
5.2 80C51的存储器 58
5.2.1 存储器结构和地址空间 58
5.2.2 程序存储器 59
5.2.3 数据存储器 60
5.3 特殊功能寄存器SFR 63
5.3.1 80C51系列的SFR 63
5.3.2 AT89S51/52的SFR地址分布及寻址 63
5.3.3 SFR的功能及应用 65
5.4 输入/输出端口 68
5.4.1 P0口 68
5.4.2 P1口 70
5.4.3 P2口 71
5.4.4 P3口 72
5.4.5 4个I/O端口的主要异同点 73
5.5 复位及时钟电路 74
5.5.1 复位和复位电路 74
5.5.2 时钟电路 76
5.6 80C51系列单片机的低功耗方式 78
5.6.1 电源控制寄存器PCON 78
5.6.2 待机方式 78
5.6.3 掉电方式 79
思考与练习 79
第6章 80C51的指令系统 81
6.1 80C51系列单片机指令系统简介 81
6.1.1 概述 81
6.1.2 汇编语言指令格式 81
6.2 寻址方式 82
6.2.1 符号注释 82
6.2.2 寻址方式说明 83
6.3 指令系统分类介绍 86
6.3.1 数据传送类指令 87
6.3.2 算术运算类指令 91
6.3.3 逻辑操作类指令 95
6.3.4 控制转移类指令 97
6.3.5 位操作类指令 101
思考与练习 103
第7章 汇编语言程序设计 106
7.1 概述 106
7.1.1 汇编语言源程序的格式 106
7.1.2 汇编语言伪指令 107
7.1.3 汇编语言程序设计步骤 108
7.2 顺序与循环程序设计 109
7.2.1 顺序程序设计 109
7.2.2 循环程序设计 110
7.3 分支程序设计 112
7.3.1 分支程序设计综述 112
7.3.2 无条件/条件转移程序 112
7.3.3 散转程序设计 113
7.4 子程序设计 115
7.4.1 子程序结构与设计注意事项 115
7.4.2 子程序的调用与返回 115
7.4.3 子程序设计举例 116
7.5 查表程序设计 117
7.5.1 查表程序综述 118
7.5.2 查表程序设计举例 118
思考与习题 120
第8章 主要功能单元 122
8.1 定时/计数器 122
8.1.1 定时/计数器T0、T1概述 122
8.1.2 定时/计数器的控制方法 123
8.1.3 定时器T0、T1的工作方式 126
8.1.4 定时器T0、T1应用举例 128
8.2 UART串行接口 132
8.2.1 80C51串行接口简介 132
8.2.2 串行通信工作方式 136
8.2.3 串行接口应用举例 138
8.3 中断系统 143
8.3.1 AT89S51单片机的中断系统 144
8.3.2 与中断有关的寄存器 146
8.3.3 中断请求的撤除 148
8.3.4 扩充外中断源 149
8.3.5 中断程序的设计与应用 149
思考与练习 155
第9章 单片机的系统扩展 157
9.1 存储器的并行扩展 157
9.1.1 外部并行扩展总线 157
9.1.2 并行扩展的寻址方法 158
9.1.3 数据存储器扩展概述 159
9.1.4 访问片外RAM的操作时序 160
9.1.5 数据存储器扩展举例 161
9.2 扩展并行I/O接口 162
9.2.1 简单的并行I/O扩展 162
9.2.2 扩展可编程I/O接口芯片 163
9.3 串行扩展概述 166
9.3.1 常用串行总线与串行接口简介 166
9.3.2 单片机串行扩展的模拟技术 169
9.4 扩展数/模转换器 170
9.4.1 D/A转换电路原理 170
9.4.2 D/A转换器的主要技术指标 171
9.4.3 扩展并行D/A转换器 171
9.5 扩展模/数转换器 174
9.5.1 逐次逼近式A/D转换原理 174
9.5.2 A/D转换的主要技术指标 175
9.5.3 扩展并行A/D转换器 176
9.5.4 扩展串行A/D转换器 178
思考与练习 181
第10章 接口技术 182
10.1 键盘接口 182
10.1.1 键盘工作原理 182
10.1.2 独立式按键 183
10.1.3 行列式键盘 184
10.2 显示器接口 189
10.2.1 显示器概述 189
10.2.2 LED的结构与原理 190
10.2.3 LED静态显示方式 191
10.2.4 LED动态显示方式 193
10.3 功率开关器件接口 195
10.3.1 输出接口的隔离技术 195
10.3.2 功率开关器件接口举例 196
10.4 打印机接口 198
10.4.1 TPμP-40A打印机的性能及接口 198
10.4.2 字符代码及打印命令 199
10.4.3 TPμP-40A打印机与单片机接口 200
思考与练习 202
第11章 单片机应用系统的设计与开发 203
11.1 应用系统设计过程 203
11.1.1 总体方案设计 203
11.1.2 硬件设计 204
11.1.3 软件设计 206
11.2 开发工具和开发方法 208
11.2.1 开发工具 209
11.2.2 单片机的开发方法 209
11.3 单片机用于水位控制系统 210
11.3.1 题目分析 211
11.3.2 硬件设计 211
11.3.3 软件设计 212
11.4 恒温箱温度控制监测系统 212
11.4.1 题目分析 212
11.4.2 硬件设计 213
11.4.3 软件设计 214
思考与练习 218
第3篇 微型计算机系统的原理及应用 220
第12章 微处理器 220
12.1 8086微处理器 220
12.1.1 8086的内部结构 220
12.1.2 8086的寄存器 222
12.1.3 存储器管理 224
12.1.4 8086 CPU的总线周期 225
12.1.5 8086系统中部分专用地址空间 226
12.2 80x86系列微处理器 227
12.2.1 功能的扩展 227
12.2.2 性能的提高 228
12.3 Pentium系列微处理器 229
12.3.1 内部组成与工作方式 229
12.3.2 Pentium微处理器的寄存器 231
12.3.3 Pcntium微处理器采用的新技术 234
12.4 新一代微处理器 235
12.4.1 64位微处理器 235
12.4.2 多核微处理器 237
思考与练习 238
第13章 存储器 240
13.1 微型计算机存储器系统的组成 240
13.1.1 存储器体系的层次结构 240
13.1.2 CPU与存储器芯片的连接 242
13.1.3 主存储器与DRAM控制器 243
13.2 高速缓冲存储器与虚拟存储器 244
13.2.1 高速缓冲存储器 245
13.2.2 虚拟存储器 248
13.3 微型计算机的内存管理 249
13.3.1 内存配置 249
13.3.2 存储器管理 250
思考与练习 251
第14章 指令系统 252
14.1 寻址方式 252
14.1.1 指令系统符号说明 252
14.1.2 寻址方式说明 253
14.2 指令系统分类介绍 255
14.2.1 数据传送类指令 255
14.2.2 算术运算类指令 259
14.2.3 逻辑运算和移位循环指令 264
14.2.4 串操作类指令 266
14.2.5 控制转移类指令 270
14.2.6 处理器控制类指令 273
思考与练习 274
第15章 汇编语言程序 276
15.1 概述 276
15.1.1 汇编语言程序的格式 276
15.1.2 表达式与运算符 277
15.1.3 常用伪指令 278
15.1.4 宏指令 281
15.2 DOS和BIOS系统功能调用 283
15.2.1 DOS软中断及系统功能调用 283
15.2.2 BIOS功能调用 286
15.3 汇编语言程序设计举例 287
15.3.1 循环结构程序举例 287
15.3.2 分支结构程序举例 288
15.3.3 子程序结构程序举例 289
思考与练习 291
第16章 输入/输出与总线 293
16.1 输入/输出的控制方式 293
16.1.1 程序控制方式 293
16.1.2 中断方式 293
16.1.3 直接存储器存取方式 294
16.2 微型计算机的总线 295
16.2.1 总线概述 295
16.2.2 总线的操作及控制 297
16.2.3 PC总线的发展 297
16.3 PCI总线 298
16.3.1 PCI总线简介 298
16.3.2 PCI总线的引脚及功能 299
16.3.3 PCI总线的数据传送操作 300
16.4 通用外部总线接口 301
16.4.1 IDE接口 301
16.4.2 SCSI接口 302
16.4.3 AGP接口 303
16.4.4 USB总线接口 304
16.4.5 串行通信接口 305
16.4.6 IEEE1394接口 306
16.5 主板控制芯片组 307
16.5.1 主板控制芯片组简介 307
16.5.2 主板控制芯片组的功能 307
16.5.3 主板控制芯片组的结构 308
思考与练习 310
第17章 微型计算机的中断系统 311
17.1 8086的中断结构 311
17.1.1 中断源 311
17.1.2 中断向量 312
17.1.3 中断处理过程 314
17.2 可编程中断控制器8259A 314
17.2.1 8259A的引脚与结构 315
17.2.2 8259A的工作过程及工作方式 316
17.2.3 8259A的级连 318
17.2.4 8259A的编程 318
17.3 高档微型计算机的中断系统 321
17.3.1 异常和中断向量 322
17.3.2 中断描述符表 323
17.3.3 中断的响应与处理过程 323
思考与练习 324
第18章 微型计算机系统应用 325
18.1 科学计算与信息管理 325
18.1.1 科学计算 325
18.1.2 信息管理 325
18.2 多媒体技术 326
18.2.1 多媒体技术概述 326
18.2.2 多媒体系统的组成 327
18.2.3 多媒体的应用 327
18.3 计算机测控系统 328
18.3.1 计算机测控系统的功能 328
18.3.2 计算机测控系统的组成 329
18.3.3 计算机测控系统的分类 330
18.4 计算机网络 331
18.4.1 计算机网络的分类 331
18.4.2 计算机网络的组成 332
18.4.3 局域网基本知识 333
18.4.4 Internet简介 334
思考与练习 336
附录A 80C51指令表 337
附录B 常用芯片引脚图 342
参考文献 344