本书以32位微处理器Pentium作为背景,讲述微型计算机原理、汇编语言程序设计和接口技术。随着Windows、Linux等多任务操作系统逐渐成为当前主流操作系统,本书增加了保护模式及Win32汇编语言程序设计等方面内容,有一定深度,并具有较强实用性。
本书可作为高等院校计算机专业及电类相关专业本科生微型计算机原理及应用、汇编语言程序设计、微型计算机接口技术及微型计算机原理与接口技术等课程的教材和参考书。通过删减适当章节,也适合非电类专业微型计算机原理及应用和微型计算机原理与接口技术等课程的教学,同时也可供自学者及从事计算机应用的工程技术人员参考。
本书以32位微处理器为背景,讲述微型计算机原理、汇编语言程序设计和接口技术。内容主要包括: Pentium微处理器内部结构、X86基本指令和多媒体指令、汇编语言程序设计、总线概念及微型计算机系统典型总线、存储系统、输入/输出系统、中断系统、串行通信和并行接口、DMA传送、数模和模数转换、保护模式下的程序设计和Win32汇编语言程序设计等。
第1章计算机基础1
1.1计算机中的数制1
1.1.1常用计数制1
1.1.2数制转换2
1.2计算机中数据的编码3
1.2.1数值数据的编码与运算3
1.2.2字符的编码6
1.3浮点数基本概念7
1.3.1浮点数8
1.3.2浮点机器数8
1.3.3浮点数的数值范围9
1.4计算机系统的基本组成10
1.4.1计算机系统的硬件组成10
1.4.2计算机系统的软件组成11
1.4.3微型计算机的硬件结构12
1.4.4微型计算机的分类和发展13
习题15第2章80x86微处理器16
2.1Intel微处理器发展简况16
2.232位微处理器内部结构17
2.2.1Pentium内部结构18
2.2.2Pentium微处理器结构特点19
2.2.332位微处理器的编程结构20
2.332位微处理器的外部引脚27
2.432位微处理器的工作模式31
2.4.180x86的地址空间32
2.4.2实地址模式32
2.4.3保护虚拟地址模式介绍34
2.4.4虚拟8086模式介绍35
2.532位微处理器的典型时序36
2.5.1时钟周期、总线周期和指令周期36
2.5.2Pentium总线周期的时序分析36
习题38
第3章指令系统39
3.1概述39
3.1.1指令的书写格式39
3.1.2符号指令的书写格式39
3.280486寻址方式40
3.2.1立即寻址40
3.2.2寄存器寻址41
3.2.3存储器操作数的寻址方式41
3.2.480486寻址方式的段约定和段超越45
3.380486标志寄存器46
3.480486基本集指令49
3.4.1传送类指令49
3.4.2算术运算指令53
3.4.3转移和调用指令62
3.4.4逻辑运算和移位指令68
3.4.5串操作指令71
3.4.6处理机控制指令78
3.580x86多媒体指令79
3.5.1MMX指令79
3.5.2SSE指令84
习题85第4章宏汇编语言87
4.1汇编语言程序的开发过程87
4.2汇编源程序的语句类型88
4.3宏汇编基本语法89
4.3.1标号、变量和常量89
4.3.2运算符90
4.4数据定义伪指令92
4.5宏汇编语言基本语句95
习题101
第5章汇编语言程序设计102
5.1汇编源程序的编程格式102
5.1.1EXE文件的编程格式102
5.1.2COM文件的编程格式103
5.1.3EXE文件和COM文件的内存映像104
5.1.4程序段前缀105
5.1.5返回DOS的其他方法106
5.1.6源程序堆栈段的设置108
5.2DOS系统I/O功能调用108
5.3BIOS键盘输入功能调用113
5.4文本方式BIOS屏幕功能调用114
5.4.1显示器114
5.4.2文本方式BIOS屏显功能调用116
5.5分支程序118
5.6循环程序121
5.7子程序及其调用123
5.8宏指令与条件汇编128
5.8.1宏指令与宏调用128
5.8.2条件汇编131
5.9代码转换132
5.10数值计算和数据处理140
5.11字符串的动态显示技术154
5.12模块化程序设计157
5.12.1支持模块化程序的伪指令158
5.12.2模块化程序的设计考虑158
5.12.3模块化程序设计举例159
5.12.4宏指令共享164
习题167
第6章总线168
6.1总线基本概念168
6.1.1总线的类型与总线结构168
6.1.2总线的性能169
6.1.3总线信息的传送方式170
6.2典型总线标准171
6.2.1AT总线171
6.2.2PCI总线174
6.3通用外部总线标准179
6.3.1并行I/O标准接口IDE和EIDE180
6.3.2并行I/O标准接口SCSI180
6.3.3通用串行总线USB181
6.3.4视频接口AGP187
6.432位微型计算机总线结构188
习题190
第7章存储器系统191
7.1概述191
7.1.1存储系统概念191
7.1.2存储器的体系结构192
7.1.3存储器的分类194
7.1.4存储器的主要性能指标195
7.2随机存储器与只读存储器197
7.2.1RAM的分类与常用RAM芯片的工作原理197
7.2.2ROM的分类与常用ROM芯片的工作原理203
7.3微型计算机系统中的存储器组织206
7.3.1存储器的扩展技术206
7.3.2CPU与主存储器的连接210
7.3.3PC机的存储器组织213
习题217
第8章输入/输出系统219
8.1概述219
8.1.1接口电路219
8.1.2输入/输出端口220
8.1.3输入/输出指令221
8.2微型计算机系统与输入/输出设备的信息交换222
8.2.1无条件传送方式222
8.2.2查询方式223
8.2.3中断控制方式225
8.2.4直接存储器存取方式225
8.3可编程定时器/计数器8254226
8.3.18254的内部结构226
8.3.28254引脚功能228
8.3.38254的工作方式229
8.3.48254的控制字与编程方法234
8.3.58254在微型计算机系统中的应用237
8.4发声系统与音乐程序设计239
8.4.1PC系列机发声系统239
8.4.2音乐程序设计举例241
习题244
第9章中断系统245
9.1中断的基本概念245
9.280x86中断指令246
9.3中断向量247
9.4微型计算机系统的中断分类250
9.4.1CPU中断250
9.4.2软件中断251
9.58259A中断控制器253
9.5.18259A内部结构253
9.5.28259A中断管理方式255
9.5.38259A初始化258
9.6微型计算机系统可屏蔽中断263
9.6.1可屏蔽中断与非屏蔽中断263
9.6.2可屏蔽中断的硬件结构264
9.6.3硬件中断和软件中断的区别266
9.7日时钟中断267
9.8实地址模式定时中断程序设计268
9.8.1定时中断程序的设计方法268
9.8.2定时中断程序设计举例269
9.9实时时钟中断277
9.9.1实时时钟电路277
9.9.2周期中断278
9.9.3报警中断281
9.10键盘中断285
9.10.1键盘中断全过程285
9.10.2键代码生成286
9.11驻留程序290
9.11.1驻留程序的设计方法290
9.11.2驻留程序设计举例293
9.11.3驻留程序的解驻296
习题300
第10章微型计算机系统串行通信301
10.1串行通信基础301
10.1.1串行通信类型301
10.1.2串行数据传输方式302
10.1.3串行异步通信协议303
10.2可编程串行异步通信接口芯片8250305
10.2.18250的内部结构306
10.2.28250的引脚功能307
10.2.38250内部寄存器310
10.2.48250的初始化编程314
10.3串行通信程序设计315
10.3.1BIOS通信软件315
10.3.2串行通信的外部环境318
10.3.3串行通信程序设计319
10.4可编程串行通信接口芯片8251A323
习题333
第11章并行I/O接口335
11.1可编程并行I/O接口芯片8255A335
11.1.18255A的内部结构及外部引脚335
11.1.28255A的控制字与初始化编程338
11.1.38255A的工作方式339
11.28255A应用347
11.3打印机并行接口356
11.3.1打印机并行接口标准356
11.3.2打印机适配器357
11.3.3打印机接口编程359
习题364
第12章DMA 控制器365
12.1概述365
12.28237A DMA控制器366
12.2.18237A 的内部结构和引脚功能366
12.2.28237A内部寄存器370
12.2.38237A 的时序374
12.38237A的应用376
12.3.18237A 的初始化编程376
12.3.28237A 在 IBM PC/AT系统中的应用377
习题378
第13章数模和模数转换379
13.1数模转换379
13.1.1数模转换原理379
13.1.2DAC 0832简介380
13.2模数转换382
13.2.1模数转换原理382
13.2.2ADC 0809简介383
习题385
第14章保护模式及其编程386
14.1保护模式下的存储管理386
14.1.1分段管理387
14.1.2分页管理391
14.1.3虚拟存储器393
14.1.4保护机制394
14.2保护模式下的程序调用和转移396
14.2.1系统段描述符、门描述符和任务状态段396
14.2.2任务内的段间转移400
14.2.3任务间的转移402
14.3保护模式下的中断和异常403
14.3.1中断和异常分类403
14.3.2中断和异常类型404
14.3.3中断和异常的处理过程405
14.3.4中断和异常处理后的返回406
14.4保护模式下的输入/输出保护407
14.5操作系统类指令408
14.5.1实地址模式和任何特权级下可执行的指令409
14.5.2实地址模式和在特权级0下可执行的指令409
14.5.3只能在保护模式下执行的指令410
14.6保护模式下的程序设计411
14.6.1实地址模式与保护模式切换411
14.6.2保护模式下中断和异常程序设计421
14.6.3输入/输出保护及任务切换429
习题435
第15章Windows 汇编语言编程初步436
15.1Windows基础436
15.2Win32汇编源程序的格式438
15.2.1源程序结构438
15.2.2Windows API函数的应用439
15.3Win32汇编可执行文件的生成442
15.3.1汇编和链接443
15.3.2调试Win32汇编程序445
15.4Win32汇编基本语法445
15.4.1标号和变量445
15.4.2结构447
15.4.3子程序448
15.4.4高级语法450
15.5创建Windows下的窗口程序454
15.5.1窗口程序的运行过程454
15.5.2窗口程序示例455
习题461
参考文献462