第1章 绪论 1
本章导读 1
1.1 冯·诺依曼计算机的基本概念和结构 1
1.2 IA-32计算机的技术概况 4
1.2.1 计算机发展简史 4
1.2.2 IA-32 CPU的技术概况 4
1.3 系列化的IA-32计算机 10
习题一 11
第2章 IA-32计算机总体结构 13
本章导读 13
2.1 IA-32计算机概述 13
2.2 IA-32计算机中的互连技术 14
2.2.1 计算机模块的功能及其所使用的信号 14
2.2.2 总线与芯片组技术 17
2.3 多级总线、芯片组与IA-32计算机的总体结构 19
2.4 芯片组及其主要技术特征 23
习题二 27
第3章 MASM 6.1x汇编语言基础 30
本章导读 30
3.1 MASM 6.1x汇编语言概述 30
3.2 汇编语言源程序的结构及编程实例 31
3.3 伪指令及编程实例 33
习题三 40
第4章 IA-32 CPU结构 42
本章导读 42
4.1 IA-32 CPU的工作模式 42
4.1.1 实地址模式 42
4.1.2 保护模式 43
4.1.3 系统管理模式 43
4.2 IA-32 CPU的程序设计模型及其操作实例 43
4.2.1 IA-32 CPU的程序设计模型概述 43
4.2.2 通用寄存器 44
4.2.3 指令指针寄存器 47
4.2.4 标志寄存器 48
4.2.5 段寄存器 50
4.3 实地址模式存储器寻址 51
4.3.1 实地址模式存储器寻址概述 51
4.3.2 实地址模式存储器组织 51
4.3.3 内存的分段管理技术 52
4.3.4 逻辑地址与物理地址 53
4.3.5 段加偏移寻址机制支持重定位功能的实现 55
4.3.6 段和偏移寄存器之间的隐含关系 55
4.4 堆栈及其操作实例 57
4.4.1 堆栈概述 57
4.4.2 硬件堆栈 58
4.4.3 软件堆栈 59
4.5 I/O接口的组织 63
4.5.1 I/O接口概述 63
4.5.2 IA-32计算机中的I/O地址空间 63
习题四 64
第5章 指令系统 67
本章导读 67
5.1 指令系统的基本概念 67
5.1.1 指令系统概述 67
5.1.2 指令格式 68
5.1.3 指令的操作码字段 69
5.1.4 指令的地址码字段 70
5.1.5 指令长度 71
5.2 指令中的数据表示 71
5.2.1 数据类型 71
5.2.2 补码 72
5.2.3 字节数据 73
5.2.4 字数据 73
5.2.5 双字数据 74
5.2.6 实数 75
5.2.7 字符数据 77
5.2.8 BCD数据 78
5.3 IA-32 CPU的操作数寻址方式 79
5.3.1 操作数寻址方式概述 79
5.3.2 立即数寻址 80
5.3.3 寄存器寻址 80
5.3.4 存储器寻址 81
5.4 IA-32 CPU指令系统 86
5.4.1 IA-32 CPU指令系统概述 86
5.4.2 数据传送类指令及其编程实例 87
5.4.3 跨段前缀 96
5.4.4 算术与逻辑运算类指令及其编程实例 96
5.4.5 处理机控制类指令 116
习题五 116
第6章 IA-32 CPU的控制器功能 123
本章导读 123
6.1 IA-32 CPU组织层次上的控制器功能 123
6.1.1 指令周期与三级时序系统 123
6.1.2 IA-32 CPU的指令执行模型 126
6.1.3 典型机器周期的执行过程 127
6.1.4 典型指令周期所包含的机器周期 129
6.2 指令的执行控制 130
6.2.1 指令的寻址方式 130
6.2.2 指令的顺序执行及其控制实例 131
6.2.3 指令的分支执行及其控制实例 133
6.2.4 指令的循环执行及其控制实例 139
6.2.5 过程调用及其控制实例 143
习题六 154
第7章 IA-32 CPU微结构 158
本章导读 158
7.1 RISC技术与CISC技术 158
7.1.1 RISC技术与CISC技术概述 158
7.1.2 RISC的特点 159
7.2 流水线技术 160
7.2.1 产生流水线技术的背景 160
7.2.2 指令流水线的工作原理 161
7.2.3 影响指令流水线执行效率的若干问题 161
7.2.4 动态执行技术 163
7.3 P6和NetBurst微结构中的指令流水线结构 164
7.4 超标量技术 166
7.5 超线程技术 166
7.6 多核技术 168
习题七 169
第8章 存储器技术 171
本章导读 171
8.1 存储系统结构 171
8.2 常用的主存储器性能指标 172
8.3 非易失性存储器 173
8.3.1 非易失性存储器概述 173
8.3.2 闪速存储器的基本概念 174
8.3.3 FWH的功能及应用 174
8.3.4 FWH的接口技术 175
8.4 DRAM存储器 175
8.4.1 DRAM存储器的基本概念 175
8.4.2 DDR/DDR2 SDRAM存储器件 176
8.4.3 DDR/DDR2 SDRAM存储模块 180
8.4.4 DDR/DDR2 SDRAM存储模块与存储器控制器之间的接口 183
8.5 Cache 183
8.5.1 Cache的基本概念 183
8.5.2 IA-32 CPU中的Cache结构 184
8.5.3 Cache的地址映像 184
8.5.4 相联存储器及其在Cache中的应用 186
8.5.5 Cache的读/写操作 186
习题八 187
第9章 总线技术 189
本章导读 189
9.1 ISA总线 189
9.1.1 8位ISA总线 189
9.1.2 16位ISA总线 191
9.1.3 16位ISA总线上的保留功能 191
9.2 PCI总线 193
9.2.1 PCI总线概述 193
9.2.2 PCI总线的中断功能 195
9.2.3 PCI总线的DMA功能 195
9.2.4 PCI总线的配置地址空间 196
9.2.5 PCI总线的BIOS及其应用实例 198
9.3 PCI Express总线 202
9.3.1 PCI Express总线概述 202
9.3.2 PCI Express总线结构 203
习题九 205
第10章 I/O技术 206
本章导读 206
10.1 I/O技术概述 206
10.1.1 I/O模块的基本概念 206
10.1.2 I/O模块的内部电路结构 207
10.1.3 程序查询、程序中断、DMA三种I/O技术的比较 208
10.2 程序中断I/O技术 208
10.2.1 中断的基本概念 208
10.2.2 中断的分类 209
10.2.3 向量中断 211
10.2.4 软件中断指令 215
10.2.5 BIOS功能调用和DOS功能调用及其应用实例 215
10.2.6 可编程中断控制器8259A及其应用实例 217
10.2.7 ISA总线和PCI总线上的中断 223
10.3 DMA I/O技术 224
10.3.1 DMA的基本概念 224
10.3.2 ISA总线和PCI总线上的DMA功能 225
习题十 225
第11章 VGA/SVGA显示系统 227
本章导读 227
11.1 应用实例——汇编语言控制VGA/SVGA显示系统工作 227
11.1.1 视频BIOS功能服务 227
11.1.2 字符工作方式 228
11.1.3 图形工作方式 230
11.2 VGA/SVGA显示系统概述 234
11.3 VGA/SVGA显示系统结构 235
11.4 监视器 236
11.4.1 监视器的成像原理 236
11.4.2 CRT监视器的性能指标 238
11.4.3 LCD监视器的性能指标 239
11.4.4 监视器的接口形式 240
11.4.5 DDC1/DDC2B功能 240
11.5 显示控制器的结构 241
11.5.1 图形媒体加速器的结构 241
11.5.2 显示BIOS 242
11.5.3 局部存储器 242
11.5.4 显示控制器与监视器之间的接口 242
11.6 存储器、MCH/GMCH、显示总线 243
11.6.1 存储器与MCH/GMCH对显示控制器的支持功能 243
11.6.2 显示总线 243
习题十一 245
第12章 硬磁盘、CD-ROM及其接口技术 247
本章导读 247
12.1 硬磁盘 247
12.1.1 硬磁盘概述 247
12.1.2 硬磁盘驱动器的组成与分类 248
12.1.3 硬磁盘驱动器的工作原理 249
12.1.4 硬磁盘驱动器的格式化 250
12.1.5 硬磁盘驱动器的主要技术指标 250
12.1.6 硬磁盘及其接口 251
12.2 CD-ROM驱动器 252
12.2.1 CD-ROM概述 252
12.2.2 CD-ROM结构与工作原理 253
12.2.3 CD-ROM接口 254
12.3 IDE接口技术 254
12.4 SCSI接口技术 255
12.4.1 SCSI接口概述 255
12.4.2 SCSI接口的分类 256
12.4.3 SCSI接口与IDE接口的比较 257
12.5 RAID与SAN技术 257
12.5.1 RAID技术 258
12.5.2 SAN技术 258
12.6 SATA技术 258
习题十二 259
第13章 LPC总线、超级I/O与低速I/O设备 261
本章导读 261
13.1 LPC总线和超级I/O电路 261
13.1.1 LPC总线 261
13.1.2 超级I/O电路 263
13.1.3 电源管理功能 264
13.2 键盘及其接口技术 264
13.2.1 应用实例——汇编语言程序控制键盘工作 264
13.2.2 键盘概述 268
13.2.3 键盘的工作原理 268
13.2.4 键盘的接口技术 269
13.3 鼠标及其接口技术 270
13.3.1 应用实例——汇编语言程序控制鼠标工作 270
13.3.2 鼠标概述 271
13.3.3 鼠标的工作原理 272
13.3.4 鼠标的接口技术 272
13.4 打印机及其接口技术 273
13.4.1 打印机概述 273
13.4.2 打印机的结构与工作原理 273
13.4.3 打印机的接口技术 274
13.5 软磁盘驱动器及其接口技术 275
13.5.1 软磁盘概述 275
13.5.2 软磁盘驱动器的结构与工作原理 275
13.5.3 软磁盘驱动器及其接口技术 276
13.6 RS-232C串行接口 276
13.6.1 RS-232C串行接口概述 276
13.6.2 RS-232C串行接口中的数据帧和波特率 277
13.6.3 RS-232C串行接口电路 277
13.6.4 RS-232C接口的应用 278
13.6.5 应用实例——汇编语言程序控制UART工作 279
习题十三 295
第14章 定时器及其控制操作 297
本章导读 297
14.1 应用实例——定时器模块中计数器2的应用 297
14.2 定时器概述 298
14.3 定时器模块的结构 299
14.4 定时器模块的工作模式 300
14.5 程序控制定时器模块工作 302
14.5.1 定时器模块8254的程序设计模型 302
14.5.2 应用实例——定时器模块中计数器0的应用 306
习题十四 307
第15章 实时钟模块及其访问操作 308
本章导读 308
15.1 应用实例——对CMOS RAM的访问操作 308
15.2 RTC模块的结构 311
15.3 硬件配置数据与CMOS RAM存储单元分配 312
习题十五 318
第16章 USB和IEEE 1394接口技术 320
本章导读 320
16.1 USB接口技术 320
16.1.1 USB接口概述 320
16.1.2 USB接口的系统结构 321
16.1.3 USB接口的连接器 323
16.1.4 USB主机 324
16.1.5 USB设备 326
16.2 IEEE 1394接口技术 327
习题十六 328
附录A 实验指导 330
A.1 实验1——MASM 6.11的安装与设置 330
A.2 实验2——熟悉MASM 6.11汇编语言环境 333
A.3 实验3——认识IA-32 CPU结构 338
A.4 实验4——认识IA-32 CPU指令系统 340
A.5 实验5——认识汇编语言程序结构 349
A.6 实验6——内存操作 354
A.7 实验7——I/O控制技术操作 357
A.8 实验8——AGP显示系统操作 361
A.9 实验9——键盘、鼠标操作 362
A.10 实验10——RS-232C接口操作 367
附录B 标准ASCII码字符集 377
附录C 80x86指令系统 378
C.1 指令符号说明 378
C.2 16位/32位80x86基本指令 378
C.3 MMX指令 385
附录D DOS功能调用 386
附录E BIOS功能调用 393
参考文献 398