第1章 微型计算机基础 1
1.1 计算机中的数制和编码 1
1.1.1 计算机中的数制 1
1.1.2 无符号数的表示及运算 1
1.1.3 带符号数的表示 5
1.1.4 补码的运算 7
1.1.5 计算机中的定点数和浮点数 10
1.1.6 计算机中的常用编码 12
1.2 微型计算机的分类与组成 14
1.2.1 微型计算机系统的分类 14
1.2.2 微型计算机系统的组成 15
1.3 微型计算机的基本工作原理 17
习题 20
第2章 80X86及ARM微处理器 21
2.1 Intel系列微处理器概述 21
2.2 8086/8088微处理器 21
2.2.1 8086 CPU引脚及其功能 22
2.2.2 8086 CPU的基本结构 24
2.2.3 8086 CPU的存储器组织 27
2.2.4 8086 CPU的I/O组织 30
2.2.5 8086 CPU最大模式和最小模式下的基本配置 31
2.2.6 8086 CPU的内部时序 35
2.2.7 8086与8088 CPU的主要区别 40
2.3 ARM微处理器 41
2.3.1 S3C44B0X CPU的引脚及其功能 41
2.3.2 S3C44B0X CPU的基本结构 46
2.3.3 S3C44B0X CPU的工作方式 49
2.3.4 S3C44B0X CPU的内部寄存器 50
习题 52
第3章 8086/8088指令系统 54
3.1 8086/8088 CPU的寻址方式 54
3.1.1 寻址方式概述 54
3.1.2 与数据有关的寻址方式 54
3.2 8086/8088的指令系统 59
3.2.1 数据传送指令 59
3.2.2 算术运算指令 64
3.2.3 逻辑指令 69
3.2.4 串操作指令 72
3.2.5 程序控制指令 76
3.2.6 处理器控制指令 81
习题 82
第4章 汇编语言程序设计 84
4.1 汇编语言程序设计概述 84
4.1.1 汇编语句的种类和格式 84
4.1.2 汇编语言程序设计一般步骤 84
4.1.3 汇编语言程序的基本结构 85
4.2 汇编语言的表达式 85
4.2.1 数值表达式 85
4.2.2 地址表达式 87
4.3 伪指令 89
4.3.1 数据定义伪指令 89
4.3.2 符号定义伪指令 90
4.3.3 其他功能伪指令 90
4.3.4 汇编语言程序结构 92
4.4 宏指令 96
4.4.1 宏定义 97
4.4.2 宏调用 97
4.4.3 宏扩展 97
4.4.4 宏定义与宏调用中的参数 98
4.5 系统功能调用 98
4.5.1 概述 98
4.5.2 常用的输入/输出系统功能调用 99
4.6 汇编语言程序设计 102
4.6.1 顺序结构程序设计 102
4.6.2 分支结构程序设计 104
4.6.3 循环结构程序设计 107
4.6.4 子程序设计 111
4.7 实用程序设计举例 117
4.8 汇编语言程序的开发过程 121
4.8.1 上机开发过程 121
4.8.2 常用开发软件介绍 122
习题 127
第5章 存储器 130
5.1 存储器的分类 130
5.1.1 按存储器在计算机系统中的作用分类 130
5.1.2 按存取方式分类 130
5.1.3 按存储介质分类 131
5.2 存储器的主要指标 132
5.3 读/写存储器RAM 133
5.3.1 RAM基本存储电路 133
5.3.2 RAM的结构及译码方式 134
5.3.3 典型RAM芯片 137
5.4 只读存储器ROM 141
5.4.1 掩膜式的ROM 141
5.4.2 可编程的ROM 142
5.4.3 可擦除可编程的ROM 143
5.4.4 电可擦除可编程的ROM 146
5.4.5 闪速存储器Flash Memory 148
5.5 高速缓冲存储器Cache 150
5.5.1 Cache的工作原理 151
5.5.2 Cache的组织结构 151
5.6 存储器芯片的扩展方法 152
5.7 微处理器8086/8088与存储器的连接 154
5.7.1 CPU与存储器的连接要求 154
5.7.2 CPU与静态随机存取存储器的连接实例 157
习题 158
第6章 输入/输出接口技术 160
6.1 计算机接口概述 160
6.1.1 接口的功能及组成 160
6.1.2 I/O端口的编址方式 162
6.2 微机与外设之间的数据传送方式 164
6.2.1 无条件传送方式 164
6.2.2 查询传送方式 165
6.2.3 中断传送方式 165
6.2.4 直接存储器存取(DMA)方式 166
6.2.5 I/O处理器控制方式 166
6.3 可编程定时/计数器接口芯片8253 166
6.3.1 定时/计数概述 166
6.3.2 8253的内部结构和外部引脚 167
6.3.3 8253的控制字 169
6.3.4 8253的初始化编程 170
6.3.5 8253的工作方式 171
6.3.6 8253应用举例 175
6.4 可编程并行接口芯片8255A 178
6.4.1 8255A的功能 178
6.4.2 8255A的内部结构及外部引脚 178
6.4.3 8255A的控制字与状态字 179
6.4.4 8255A的初始化编程 180
6.4.5 8255A的工作方式 181
6.4.6 8255A应用举例 184
6.5 串行通信 186
6.5.1 串行通信基础 186
6.5.2 串行通信工作方式 190
6.5.3 RS-232C标准 190
6.5.4 长距离串行通信 194
6.6 可编程串行接口芯片8251A 195
6.6.1 8251A的主要功能 195
6.6.2 8251A的内部结构及外部引脚 195
6.6.3 8251A的工作方式及控制字 198
6.6.4 8251A应用举例 201
习题 202
第7章 中断系统 206
7.1 中断系统的基本概念 206
7.1.1 中断概念 206
7.1.2 中断处理的过程 206
7.2 8086 CPU的中断系统 208
7.2.1 8086 CPU的中断源 208
7.2.2 8086 CPU中断处理过程 210
7.2.3 中断向量与中断类型号 212
7.3 中断控制器8259A 212
7.3.1 8259A的外部引脚和内部结构 212
7.3.2 8259A的中断工作方式 215
7.3.3 8259A的编程 218
7.3.4 8259A应用举例 222
习题 226
第8章 微机中的DMA系统 227
8.1 DMA系统概述 227
8.1.1 DMA方式的基本工作过程 227
8.1.2 DMA方式的操作步骤 228
8.2 可编程DMA控制器8237 229
8.2.1 8237的结构、引脚及功能 229
8.2.2 8237的内部寄存器 235
8.2.3 8237内部的接口地址分配 238
8.2.4 8237的应用 239
习题 240
第9章 数/模(D/A)和模/数(A/D)转换器 241
9.1 D/A和A/D转换器在微机控制系统中的作用 241
9.2 D/A转换器接口 242
9.2.1 D/A转换的基本原理 242
9.2.2 D/A转换器的主要性能指标 243
9.2.3 D/A转换器DAC0832 244
9.2.4 D/A转换器DAC1210 248
9.3 A/D转换器 251
9.3.1 A/D转换的基本原理 251
9.3.2 A/D转换器的主要性能指标 253
9.3.3 A/D转换器ADC0809 253
9.3.4 A/D转换器AD574A 257
习题 262
第10章 总线技术 263
10.1 总线技术概述 263
10.1.1 总线基本概念及标准 263
10.1.2 面向总线结构的优点 265
10.1.3 总线控制原理 265
10.2 系统总线 266
10.2.1 ISA总线 267
10.2.2 EISA总线 269
10.2.3 VESA总线 269
10.2.4 PCI总线 270
10.3 外部通信总线 272
10.3.1 EPP并行接口 273
10.3.2 USB外设总线 273
习题 276
附录 277
附录A 8086/8088指令系统表 277
附录B ASCII码字符表 283
参考文献 284