原理篇 2
第1章 微型计算机基础 2
1.1 微型计算机发展概述 2
1.1.1 微型计算机的发展 2
1.1.2 微型计算机的特点 3
1.2 微型计算机系统的组成、结构与工作过程 4
1.2.1 微型计算机系统的组成与结构 4
1.2.2 微机系统的工作过程 6
1.3 常用数制与编码表示方法 9
1.3.1 计算机中常用的数制 9
1.3.2 计算机中信息的编码表示 11
1.4 微型计算机中的数据表示方法 12
思考题与习题 13
第2章 8086/8088微处理器 14
2.1 8086/8088微处理器特点 14
2.2 8086/8088微处理器结构 14
2.2.1 8086/8088功能结构 14
2.2.2 8086/8088寄存器结构 16
2.2.3 8086/8088存储器寻址 18
2.2.4 8086/8088外部引脚 19
2.3 8086/8088 CPU工作模式和引脚 21
2.3.1 8086/8088最小工作模式 21
2.3.2 8088最大工作模式 23
2.4 8088的总线时序 26
2.4.1 最小工作模式典型时序 27
2.4.2 最大工作模式典型时序 30
2.5 微型计算机系统组成 32
2.6 高性能微机技术简介 33
2.6.1 流水线技术 33
2.6.2 RISC、SIMD简介 34
2.6.3 MMX、SSE、SSE2技术 35
思考题与习题 35
第3章 80X86微处理器指令系统 37
3.1 寻址方式 37
3.2 指令系统 41
3.2.1 数据传送指令 41
3.2.2 算术运算指令 46
3.2.3 逻辑运算指令 52
3.2.4 移位指令和循环移位指令 53
3.2.5 处理器控制指令及标志位处理指令 55
3.3 32位微处理器指令系统 55
3.3.1 32位微处理器寄存器结构 55
3.3.2 32位微处理器操作模式和指令特点 56
思考题与习题 56
第4章 汇编语言程序设计 59
4.1 汇编语言基础 59
4.1.1 汇编语言的语句组成 59
4.1.2 常数与表达式 60
4.1.3 标识符 61
4.1.4 定义数据 61
4 1.5 分析操作符与合成操作符 63
4.1.6 符号定义 64
4.2 顺序程序设计 65
4.2.1 最简单的汇编程序 65
4.2.2 包含多个段的汇编程序 66
4.3 分支程序设计 68
4.3.1 转移指令 68
4.3.2 分支程序举例 73
4.4 循环程序设计 77
4.4.1 循环程序的基本结构 77
4.4.2 循环指令 78
4.4.3 循环程序举例 80
4.5 DOS系统功能调用 82
4.6 子程序设计 85
4.6.1 调用与返回指令 85
4.6.2 过程定义 88
4.6.3 参数和结果传递的问题 89
4.6.4 子程序设计举例 96
4.7 字符串处理 97
4.7.1 字符串操作指令 97
4.7.2 重复指令前缀 102
4.7.3 程序举例 103
4.8 码转换程序设计 104
4.8.1 十六进制数到ASCII码的转换 104
4.8.2 二进制位串到ASCII串的转换 106
4.8.3 ASCII码到十六进制数的转换 107
思考题与习题 108
第5章 存储器技术 111
5.1 存储器概述 111
5.1.1 存储器分类 111
5.1.2 存储器性能指标 112
5.1.3 存储器系统结构 113
5.2 随机读写存储器 115
5.2.1 静态RAM 115
5.2.2 动态RAM 117
5.3 CPU与存储器的连接 121
5.3.1 存储器扩展 121
5.3.2 存储器译码 123
5.4 现代微机的存储体系 125
5.4.1 Cache-主存存储层次 125
5.4.2 主辅存存储层次 128
5.4.3 并行主存系统及新型RAM 129
思考题与习题 130
第6章 输入/输出接口技术 132
6.1 I/O接口概述 133
6.2 I/O端口及其编址方法 135
6.3 输入/输出方式及其接口 138
6.3.1 程序控制传输方式 138
6.3.2 中断传输方式 143
6.3.3 DMA方式 145
6.3.5 4种I/O方式的比较 149
思考题与习题 149
第7章 中断技术 150
7.1 中断的基本概念及其应用 150
7.2 中断系统的功能和中断优先级 151
7.3 8086/8088的中断操作 155
7.4 中断响应过程与时序 159
7.4.1 硬件中断的响应过程和中断服务 159
7.4.2 软件中断的响应过程 162
思考题与习题 164
第8章 总线技术 165
8.1 总线概述 165
8.2 总线控制 166
8.2.1 总线仲裁 167
8.2.2 总线握手 168
8.3 常用总线标准 170
8.3.1 ISA总线 170
8.3.2 PCI总线 172
8.3.3 USB总线 175
8.3.4 IEEE 1394总线 179
8.3.5 SCSI总线 179
8.3.6 AGP总线 180
思考题与习题 181
接口篇 184
第9章 可编程中断控制器8259A 184
9.1 8259A的主要功能及结构 184
9.2 8259A的工作过程 187
9.3 8259A的中断管理 189
9.4 8259A的编程 194
9.4.1 初始化命令字 194
9.4.2 初始化的程序流程 196
9.4.3 操作命令字 197
9.5 8259A的应用举例 200
思考题与习题 203
第10章 可编程定时/计数器 204
10.1 8253的引脚功能和编程结构 205
10.2 8253的编程 207
10.3 8253的工作方式 210
10.3.1 方式0 210
10.3.2 方式1 211
10.3.3 方式2 213
10.3.4 方式3 214
10.3.5 方式4 216
10.3.6 方式5 217
10.3.7 6种工作方式的比较 219
10.4 8253的综合应用举例——自动气象站瞬时风速和降雨量测量 220
10.5 8254芯片 222
思考题与习题 224
第11章 可编程并行接口芯片8255A 226
11.1 并行接口概述 226
11.2 8255A概述 227
11.3 8255的工作过程分析 230
11.4 并行接口应用举例 234
11.4.1 8255作为打印机接口 235
11.4.2 8255在自动气象站中的应用——风向信息采集、键盘和显示接口 236
思考题与习题 243
第12章 串行通信与可编程接口芯片8251 245
12.1 串行通信基础 245
12.1.1 串行通信方式 245
12.1.2 数据传送方式 247
12.1.3 信号传输方式 247
12.1.4 串行接口标准 248
12.2 可编程串行接口芯片8251A 251
12.2.1 8251A概述 251
12.2.2 8251A初始化编程 254
12.2.3 8251A应用举例 257
思考题与习题 260
第13章 A/D、D/A转换技术及其接口设计 262
13.1 D/A转换器及其与主机的接口 263
13.1.1 D/A转换器的基本组成 263
13.1.2 D/A转换原理 264
13.1.3 D/A转换器的的主要技术指标及选用要点 266
13.1.4 DAC0832 268
13.1.5 使用D/A转换器时应注意的几个问题 270
13.1.6 串行接口D/A转换器 272
13.1.7 D/A转换器应用举例——D/A转换器用于波形发生 273
13.2 A/D转换器及其与主机的接口 274
13.2.1 A/D转换接口 274
13.2.2 A/D转换原理 279
13.2.3 借助计算机的软硬件资源实现A/D转换 281
13.2.4 A/D转换器的主要技术指标、选择原则 282
13.2.5 模数(A/D)转换器ADC0809 284
13.2.6 12位A/D转换器AD574 288
13.2.8 自动气象站集成设计 291
思考题与习题 292
附录A DEBUG的使用及汇编程序的编写与调试 293
A.1 查看CPU和内存,寻址方式验证 293
A.2 编程、编译、连接、跟踪汇编程序 296
附录B ASCII编码表 299
附录C 8086指令集 301
附录D IBM PC中断号列表 306
附录E 常用DOS功能调用(INT 21H) 308
附录F 常用BIOS功能调用 311
附录G 基本逻辑门电路图形符号对照表 313
参考文献 314