
微机原理与接口技术(第二版)
《微机原理与接口技术(第二版)》是2007年人民邮电出版社出版的图书,作者是周明德。 本书适合各类高等院校、各种成人教育学校和培训班作为教材使用。
基本介绍
- 书名:微机原理与接口技术(第二版)
- 作者:周明德
- ISBN:978-7-115-15751-5/TP
- 页数:371页
- 定价:34.00元
- 出版社:人民邮电出版社
- 出版时间:2007年4月
- 装帧:平装
- 开本:16 开
- 丛 书 名 :高等学校21世纪教材
- 字数:585千字
内容简介
本书是《微机原理与接口技术》的第二版。本版本根据微处理器的最新发展(超执行绪技术、双核技术),从Intel系列微处理器整体着眼,又落实到最基本、最常用的8086处理器,介绍了微机系统原理、Intel系列微处理器结构、8086指令系统和彙编语言程式设计、主存储器及与CPU的接口、输入输出、中断以及常用的微机接口电路和数模(D/A)转换与模数(A/D)转换接口。本修订版根据教学改革的要求与授课教师的意见,作了必要的精简与修改。全书观点新、实用性强。
目录
第1章 概述 1
1.1 IA-32结构的概要历史 1
1.1.1 8086 2
1.1.2 80386 2
1.1.3 80486 3
1.1.4 奔腾(Pentium) 3
1.1.5 P6系列处理器 4
1.1.6 奔腾II 4
1.1.7 奔腾III 4
1.1.8 Intel Pentium 4处理器 4
1.1.9 Intel超执行绪处理器 4
1.1.10 Intel双核技术处理器 5
1.2 计算机基础 6
1.2.1 计算机的基本结构 6
1.2.2 常用的名词术语和二进制编码 8
1.2.3 指令程式和指令系统 9
1.2.4 初级计算机 10
1.2.5 简单程式举例 12
1.2.6 定址方式 17
1.3 计算机的硬体和软体 21
1.3.1 系统软体 22
1.3.2 套用软体 22
1.3.3 支撑(或称为支持)软体 23
1.4 微型计算机的结构 23
1.4.1 微型计算机的外部结构 23
1.4.2 微型计算机的内部结构 24
1.5 多媒体计算机 25
1.5.1 人机接口 25
1.5.2 多媒体计算机的主要功能 25
1.5.3 多媒体计算机的组成 26
习题 27
1.1 IA-32结构的概要历史 1
1.1.1 8086 2
1.1.2 80386 2
1.1.3 80486 3
1.1.4 奔腾(Pentium) 3
1.1.5 P6系列处理器 4
1.1.6 奔腾II 4
1.1.7 奔腾III 4
1.1.8 Intel Pentium 4处理器 4
1.1.9 Intel超执行绪处理器 4
1.1.10 Intel双核技术处理器 5
1.2 计算机基础 6
1.2.1 计算机的基本结构 6
1.2.2 常用的名词术语和二进制编码 8
1.2.3 指令程式和指令系统 9
1.2.4 初级计算机 10
1.2.5 简单程式举例 12
1.2.6 定址方式 17
1.3 计算机的硬体和软体 21
1.3.1 系统软体 22
1.3.2 套用软体 22
1.3.3 支撑(或称为支持)软体 23
1.4 微型计算机的结构 23
1.4.1 微型计算机的外部结构 23
1.4.2 微型计算机的内部结构 24
1.5 多媒体计算机 25
1.5.1 人机接口 25
1.5.2 多媒体计算机的主要功能 25
1.5.3 多媒体计算机的组成 26
习题 27
第2章 IA-32结构微处理器与8086 30
2.1 IA-32微处理器是8086的延伸 30
2.1.1 8086功能的扩展 30
2.1.2 8086性能的提高 31
2.2 8086的功能结构 32
2.3 8086微处理器的执行环境 34
2.3.1 基本执行环境概要 34
2.3.2 基本的程式执行暂存器 34
2.3.3 存储器组织 39
习题 41
2.1 IA-32微处理器是8086的延伸 30
2.1.1 8086功能的扩展 30
2.1.2 8086性能的提高 31
2.2 8086的功能结构 32
2.3 8086微处理器的执行环境 34
2.3.1 基本执行环境概要 34
2.3.2 基本的程式执行暂存器 34
2.3.3 存储器组织 39
习题 41
第3章 8086指令系统 42
3.1 基本数据类型 42
3.1.1 字、双字的对齐 42
3.1.2 数字数据类型 43
3.1.3 指针数据类型 44
3.1.4 串数据类型 44
3.2 8086的指令格式 44
3.3 8086指令的运算元定址方式 45
3.3.1 立即数 45
3.3.2 暂存器运算元 46
3.3.3 存储器运算元 46
3.3.4 I/O连线埠定址 50
3.4 8086的通用指令 50
3.4.1 数据传送指令 50
3.4.2 二进制算术指令 54
3.4.3 十进制算术指令 60
3.4.4 逻辑指令 63
3.4.5 移位和循环移位指令 65
3.4.6 控制传送指令 68
3.4.7 串指令 74
3.4.8 标誌控制操作 78
3.4.9 段暂存器指令 78
3.4.10 杂项指令 79
习题 79
3.1 基本数据类型 42
3.1.1 字、双字的对齐 42
3.1.2 数字数据类型 43
3.1.3 指针数据类型 44
3.1.4 串数据类型 44
3.2 8086的指令格式 44
3.3 8086指令的运算元定址方式 45
3.3.1 立即数 45
3.3.2 暂存器运算元 46
3.3.3 存储器运算元 46
3.3.4 I/O连线埠定址 50
3.4 8086的通用指令 50
3.4.1 数据传送指令 50
3.4.2 二进制算术指令 54
3.4.3 十进制算术指令 60
3.4.4 逻辑指令 63
3.4.5 移位和循环移位指令 65
3.4.6 控制传送指令 68
3.4.7 串指令 74
3.4.8 标誌控制操作 78
3.4.9 段暂存器指令 78
3.4.10 杂项指令 79
习题 79
第4章 彙编语言程式设计 83
4.1 彙编语言的格式 83
4.1.1 8086彙编语言程式的一个例子 83
4.1.2 8086彙编语言源程式的格式 84
4.2 语句行的构成 84
4.2.1 标记(Token) 84
4.2.2 符号(Symbol) 87
4.2.3 表达式(Expressions) 88
4.2.4 语句(Statements) 91
4.3 指示性语句(Directive Statements) 92
4.3.1 符号定义语句 92
4.3.2 数据定义语句 93
4.3.3 段定义语句 99
4.3.4 过程定义语句 102
4.3.5 结束语句 104
4.4 指令语句 104
4.4.1 指令助记符 104
4.4.2 指令前缀 105
4.4.3 运算元定址方式 105
4.4.4 串操作指令 107
4.5 彙编语言程式设计及举例 110
4.5.1 算术运算程式设计(直线运行程式) 110
4.5.2 分支程式设计 112
4.5.3 循环程式设计 113
4.5.4 字元串处理程式设计 115
4.5.5 码转换程式设计 119
4.5.6 有关I/O的DOS功能调用 123
4.5.7 宏彙编与条件彙编 127
习题 136
4.1 彙编语言的格式 83
4.1.1 8086彙编语言程式的一个例子 83
4.1.2 8086彙编语言源程式的格式 84
4.2 语句行的构成 84
4.2.1 标记(Token) 84
4.2.2 符号(Symbol) 87
4.2.3 表达式(Expressions) 88
4.2.4 语句(Statements) 91
4.3 指示性语句(Directive Statements) 92
4.3.1 符号定义语句 92
4.3.2 数据定义语句 93
4.3.3 段定义语句 99
4.3.4 过程定义语句 102
4.3.5 结束语句 104
4.4 指令语句 104
4.4.1 指令助记符 104
4.4.2 指令前缀 105
4.4.3 运算元定址方式 105
4.4.4 串操作指令 107
4.5 彙编语言程式设计及举例 110
4.5.1 算术运算程式设计(直线运行程式) 110
4.5.2 分支程式设计 112
4.5.3 循环程式设计 113
4.5.4 字元串处理程式设计 115
4.5.5 码转换程式设计 119
4.5.6 有关I/O的DOS功能调用 123
4.5.7 宏彙编与条件彙编 127
习题 136
第5章 处理器汇流排时序和系统汇流排 138
5.1 8086的引脚功能 138
5.2 8086处理器时序 142
5.3 系统汇流排 149
5.3.1 概述 149
5.3.2 PC汇流排 154
5.3.3 ISA汇流排 154
5.3.4 PCI汇流排 155
5.3.5 USB汇流排 158
习题 159
5.1 8086的引脚功能 138
5.2 8086处理器时序 142
5.3 系统汇流排 149
5.3.1 概述 149
5.3.2 PC汇流排 154
5.3.3 ISA汇流排 154
5.3.4 PCI汇流排 155
5.3.5 USB汇流排 158
习题 159
第6章 存储器 161
6.1 半导体存储器的分类 162
6.1.1 RAM的种类 162
6.1.2 ROM的种类 163
6.2 读写存储器RAM 163
6.2.1 基本存储电路 163
6.2.2 RAM的结构 165
6.2.3 RAM与CPU的连线 168
6.2.4 64K位动态RAM存储器 172
6.3 现代RAM 176
6.3.1 记忆体条的构成 177
6.3.2 扩展数据输出动态随机访问存储器EDO DRAM 177
6.3.3 同步动态随机访问存储器SDRAM 178
6.3.4 突发存取的高速动态随机存储器Rambus DRAM 180
6.4 唯读存储器(ROM) 181
6.4.1 掩模唯读存储器 181
6.4.2 可擦除的可程式序的唯读存储器EPROM 183
习题 190
6.1 半导体存储器的分类 162
6.1.1 RAM的种类 162
6.1.2 ROM的种类 163
6.2 读写存储器RAM 163
6.2.1 基本存储电路 163
6.2.2 RAM的结构 165
6.2.3 RAM与CPU的连线 168
6.2.4 64K位动态RAM存储器 172
6.3 现代RAM 176
6.3.1 记忆体条的构成 177
6.3.2 扩展数据输出动态随机访问存储器EDO DRAM 177
6.3.3 同步动态随机访问存储器SDRAM 178
6.3.4 突发存取的高速动态随机存储器Rambus DRAM 180
6.4 唯读存储器(ROM) 181
6.4.1 掩模唯读存储器 181
6.4.2 可擦除的可程式序的唯读存储器EPROM 183
习题 190
第7章 输入和输出 194
7.1 概述 194
7.1.1 输入输出的定址方式 194
7.1.2 CPU与I/O设备之间的接口信息 195
7.1.3 CPU的输入输出时序 196
7.1.4 CPU与接口电路间数据传送的形式 196
7.1.5 IBM PC的外设接口与现代PC的外设接口 197
7.2 CPU与外设数据传送的方式 199
7.2.1 查询传送方式 200
7.2.2 中断传送方式 203
7.2.3 直接数据通道传送(DMA) 204
7.3 DMA控制器 206
7.3.1 主要功能 206
7.3.2 8237的结构 207
7.3.3 8237的工作周期 208
7.3.4 8237的引线 208
7.3.5 8237的工作方式 211
7.3.6 8237的暂存器组和编程 212
习题 218
7.1 概述 194
7.1.1 输入输出的定址方式 194
7.1.2 CPU与I/O设备之间的接口信息 195
7.1.3 CPU的输入输出时序 196
7.1.4 CPU与接口电路间数据传送的形式 196
7.1.5 IBM PC的外设接口与现代PC的外设接口 197
7.2 CPU与外设数据传送的方式 199
7.2.1 查询传送方式 200
7.2.2 中断传送方式 203
7.2.3 直接数据通道传送(DMA) 204
7.3 DMA控制器 206
7.3.1 主要功能 206
7.3.2 8237的结构 207
7.3.3 8237的工作周期 208
7.3.4 8237的引线 208
7.3.5 8237的工作方式 211
7.3.6 8237的暂存器组和编程 212
习题 218
第8章 中断 221
8.1 概述 221
8.1.1 为什幺要用中断 221
8.1.2 中断源 221
8.1.3 中断系统的功能 222
8.2 最简单的中断情况 222
8.2.1 CPU回响中断的条件 223
8.2.2 CPU对中断的回响 224
8.3 中断优先权 226
8.3.1 用软体确定中断优先权 226
8.3.2 硬体优先权排队电路 227
8.4 8086的中断方式 229
8.4.1 外部中断 229
8.4.2 内部中断 230
8.4.3 中断向量表 230
8.4.4 8086中的中断回响和处理过程 231
8.5 中断控制器Intel 8259A 233
8.5.1 功能 233
8.5.2 结构 233
8.5.3 8259A的引线 234
8.5.4 8259A的中断顺序 235
8.5.5 8259A的编程 235
8.5.6 8259A的工作方式 240
习题 243
8.1 概述 221
8.1.1 为什幺要用中断 221
8.1.2 中断源 221
8.1.3 中断系统的功能 222
8.2 最简单的中断情况 222
8.2.1 CPU回响中断的条件 223
8.2.2 CPU对中断的回响 224
8.3 中断优先权 226
8.3.1 用软体确定中断优先权 226
8.3.2 硬体优先权排队电路 227
8.4 8086的中断方式 229
8.4.1 外部中断 229
8.4.2 内部中断 230
8.4.3 中断向量表 230
8.4.4 8086中的中断回响和处理过程 231
8.5 中断控制器Intel 8259A 233
8.5.1 功能 233
8.5.2 结构 233
8.5.3 8259A的引线 234
8.5.4 8259A的中断顺序 235
8.5.5 8259A的编程 235
8.5.6 8259A的工作方式 240
习题 243
第9章 计数器和定时器电路Intel 8253/8254-PIT 246
9.1 概述 246
9.1.1 主要功能 246
9.1.2 8253-PIT的内部结构 247
9.1.3 8253-PIT的引线 248
9.2 8253-PIT的控制字 249
9.3 8253-PIT的工作方式 250
9.3.1 方式0—计完最后一个数时中断 250
9.3.2 8253-PIT工作方式小结 251
9.4 8253-PIT的编程 253
9.5 8254-PIT 254
习题 255
9.1 概述 246
9.1.1 主要功能 246
9.1.2 8253-PIT的内部结构 247
9.1.3 8253-PIT的引线 248
9.2 8253-PIT的控制字 249
9.3 8253-PIT的工作方式 250
9.3.1 方式0—计完最后一个数时中断 250
9.3.2 8253-PIT工作方式小结 251
9.4 8253-PIT的编程 253
9.5 8254-PIT 254
习题 255
第10章 并行接口晶片 257
10.1 可程式的并行输入/输出接口晶片8255A-5的结构 257
10.2 方式选择 259
10.2.1 “方式”选择控制字 259
10.2.2 方式选择举例 261
10.2.3 按位置位/复位功能 262
10.3 方式0的功能 263
10.3.1 方式0的基本功能 263
10.3.2 方式0的时序 264
10.4 方式1的功能 264
10.4.1 主要功能 264
10.4.2 方式1输入 265
10.4.3 方式1输出 266
10.5 方式2的功能 268
10.5.1 主要功能 268
10.5.2 时序 269
10.5.3 方式2的控制字 269
10.6 8255A套用举例 270
习题 272
10.1 可程式的并行输入/输出接口晶片8255A-5的结构 257
10.2 方式选择 259
10.2.1 “方式”选择控制字 259
10.2.2 方式选择举例 261
10.2.3 按位置位/复位功能 262
10.3 方式0的功能 263
10.3.1 方式0的基本功能 263
10.3.2 方式0的时序 264
10.4 方式1的功能 264
10.4.1 主要功能 264
10.4.2 方式1输入 265
10.4.3 方式1输出 266
10.5 方式2的功能 268
10.5.1 主要功能 268
10.5.2 时序 269
10.5.3 方式2的控制字 269
10.6 8255A套用举例 270
习题 272
第11章 串列通信及接口电路 274
11.1 串列通信 274
11.1.1 概述 274
11.1.2 串列接口标準EIA RS-232C接口 278
11.2 Intel 8251A可程式通信接口 280
11.2.1 8251的基本性能 280
11.2.2 8251的方框图 281
11.2.3 接口信号 282
11.2.4 8251的编程 284
11.2.5 8251套用举例 287
习题 289
11.1 串列通信 274
11.1.1 概述 274
11.1.2 串列接口标準EIA RS-232C接口 278
11.2 Intel 8251A可程式通信接口 280
11.2.1 8251的基本性能 280
11.2.2 8251的方框图 281
11.2.3 接口信号 282
11.2.4 8251的编程 284
11.2.5 8251套用举例 287
习题 289
第12章 数模(D/A)转换与模数(A/D)转换接口 291
12.1 模拟量输入与输出通道 291
12.1.1 模拟量输入通道的组成 292
12.1.2 模拟量输出通道的组成 292
12.2 数模(D/A)转换器 293
12.2.1 D/A转换的基本原理 293
12.2.2 D/A转换器的主要技术指标 294
12.2.3 典型的D/A转换器晶片 295
12.3 D/A转换器与微处理器的接口 299
12.3.1 8位D/A转换晶片与CPU的接口 299
12.3.2 12位D/A转换晶片与CPU的接口 300
12.4 模数(A/D)转换器 301
12.4.1 A/D转换的基本原理 301
12.4.2 A/D转换器的主要技术指标 302
12.4.3 A/D转换器与系统连线的问题 303
12.4.4 典型的A/D转换晶片 304
12.5 A/D转换器与微处理器的接口 307
12.5.1 8位A/D转换晶片与CPU的接口 308
12.5.2 12位A/D转换晶片与CPU的接口 309
12.6 D/A、A/D转换套用举例 310
12.6.1 D/A转换举例 310
12.6.2 A/D转换举例 311
习题 313
12.1 模拟量输入与输出通道 291
12.1.1 模拟量输入通道的组成 292
12.1.2 模拟量输出通道的组成 292
12.2 数模(D/A)转换器 293
12.2.1 D/A转换的基本原理 293
12.2.2 D/A转换器的主要技术指标 294
12.2.3 典型的D/A转换器晶片 295
12.3 D/A转换器与微处理器的接口 299
12.3.1 8位D/A转换晶片与CPU的接口 299
12.3.2 12位D/A转换晶片与CPU的接口 300
12.4 模数(A/D)转换器 301
12.4.1 A/D转换的基本原理 301
12.4.2 A/D转换器的主要技术指标 302
12.4.3 A/D转换器与系统连线的问题 303
12.4.4 典型的A/D转换晶片 304
12.5 A/D转换器与微处理器的接口 307
12.5.1 8位A/D转换晶片与CPU的接口 308
12.5.2 12位A/D转换晶片与CPU的接口 309
12.6 D/A、A/D转换套用举例 310
12.6.1 D/A转换举例 310
12.6.2 A/D转换举例 311
习题 313
第13章 IA-32微处理器 314
13.1 IA-32处理器的功能结构 314
13.1.1 80386的功能结构 314
13.1.2 80486的功能结构 316
13.2 IA-32结构微处理器的指令系统的发展 317
13.3 IA-32结构微处理器的性能发展 319
13.3.1 IA-32的流水线结构简介 319
13.3.2 Cache 324
13.4 IA-32结构微处理器的执行环境 328
13.4.1 操作模式 328
13.4.2 基本执行环境概要 328
13.4.3 存储器组织 330
13.4.4 基本的程式执行暂存器 332
13.4.5 X87 FPU结构 337
13.5 IA-32 处理器的工作方式 340
13.6 保护虚地址方式 341
13.6.1 保护方式下的定址机制 341
13.6.2 全局描述符表和局部描述符表 342
13.6.3 描述符 343
13.6.4 选择子 347
13.6.5 段描述符的高速缓冲暂存器 347
13.6.6 IA-32微处理器中的特权级 349
13.6.7 任务切换 356
13.7 虚拟存储器管理与IA-32微处理器的MMU单元 360
13.7.1 虚拟存储器概念 360
13.7.2 Intel IA-32结构微处理器的存储管理单元 364
习题 371
13.1 IA-32处理器的功能结构 314
13.1.1 80386的功能结构 314
13.1.2 80486的功能结构 316
13.2 IA-32结构微处理器的指令系统的发展 317
13.3 IA-32结构微处理器的性能发展 319
13.3.1 IA-32的流水线结构简介 319
13.3.2 Cache 324
13.4 IA-32结构微处理器的执行环境 328
13.4.1 操作模式 328
13.4.2 基本执行环境概要 328
13.4.3 存储器组织 330
13.4.4 基本的程式执行暂存器 332
13.4.5 X87 FPU结构 337
13.5 IA-32 处理器的工作方式 340
13.6 保护虚地址方式 341
13.6.1 保护方式下的定址机制 341
13.6.2 全局描述符表和局部描述符表 342
13.6.3 描述符 343
13.6.4 选择子 347
13.6.5 段描述符的高速缓冲暂存器 347
13.6.6 IA-32微处理器中的特权级 349
13.6.7 任务切换 356
13.7 虚拟存储器管理与IA-32微处理器的MMU单元 360
13.7.1 虚拟存储器概念 360
13.7.2 Intel IA-32结构微处理器的存储管理单元 364
习题 371