第一章 概述 1
§1.1 计算机的基本结构和工作原理 1
一、计算机的基本结构 1
§1.2 微处理器.微计算机,微处理器系统 3
一、微处理器(Microprocessor简称μP或MP) 3
二、微计算机(Microcomputer简称μC或MC) 3
三、微处理器系统(Microprocessing System简称μPS或MPS) 3
§1.3 微处理器的产生和发展 4
§1.4 微计算机的分类 6
一、按CPU的字长来分 6
二、按微计算机利用的形态分类 6
§1.5 微计算机系统的组成 7
一、微计算机系统的一般结构 7
二、硬件 7
三、软件 7
四、微计算机系统结构的特殊性 11
一、系统连接 12
§1.6 典型微处理器系统结构和工作原理 12
二、典型微处理器的内部结构 13
三、典型存储器的内部结构 16
四、简单程序的编制和执行过程 17
五、微计算机中数和字符的表示 21
§1.7 微计算机的应用概述 25
一、微计算机的特点 25
二、微计算机应用层次 26
一、系统主板的结构 27
§1.8 IBM PC XT/AT微计算机简介 27
二、IBM PC XT/AT微机系统的软件 29
三、IBM PC XT/AT的可扩充性 29
习题 29
第二章 8086/80286微处理器及其体系结构 31
§2.1 微处理器性能描述 31
一、字长 31
六、工艺形式及其它 32
五、是否能构成多处理器系统 32
四、访存空间 32
二、指令数 32
三、基本指令执行时间 32
§2.2 8086的内部结构 34
一、执行部件EU 34
二、总线接口部件BIU 35
§2.3 8086的寄存器结构 37
一、通用寄存器 37
二、段寄存器 38
三、状态标志寄存器 39
四、指令指针寄存器 40
§2.4 8086CPU引脚特性 40
一、地址/数据总线 40
二、地址/状态总线 40
三、控制总线 41
§2.5 8088和8086的比较 42
一、8284A时钟信号发生器 42
§2.6 8086的时钟和总线周期概念 42
四、电源线Vcc和地线GND 42
五、其它控制线:24~31脚 42
二、总线周期概念 43
§2.7 最小/最大工作方式 44
一、最小方式及8282,8286的应用 44
二、最大方式及8288的应用 48
§2.8 8086的操作时序 52
一、系统的复位和启动操作 52
二、总线操作 52
四、中断响应总线周期操作 58
三、暂停操作 58
五、最小方式下的总线保持请求/保持响应操作 60
六、最大方式下的总线请求/允许/释放操作 60
§2.9 存储器组织 61
一、存储器组织 61
二、存储器分段 63
三、实际地址(physical address)和逻辑地址 64
四、堆栈 64
六、单模块程序的四个现行段 66
五、专用和保留的存储器单元 66
§2.10 I/O端口组织 68
§2.11 超级十六位微处理器——80286 68
一、80286的主要特性 68
二、内部结构 69
三、寄存器结构 70
四、80286的地址方式 71
五、80286微处理器系统结构 74
习题 75
第三章 8086/80286的指令系统 79
§3.1 指令的基本格式 79
一、指令构成 79
二、8086的通用指令格式 80
§3.2 8086的寻址方式 81
一、固定寻址 81
二、立即数寻址 81
四、存储器寻址 82
三、寄存器寻址 82
五、I/O端口寻址 86
§3.3 指令执行时间 87
§3.4 8086指令系统 89
一、数据传送(Date Transfer)类指令及应用 90
二、算术运算(Arithmeric)类指令及应用 97
三、逻辑运算与移位(Logic shift)类指令及应用 109
四、串操作(String Manlpulation)类指令及应用 114
五、控制转移(Control Jump)类指令及应用 118
六、处理器控制(Processor Control)类指令及应用 125
§3.5 中断类指令和IBM PC DOS系统功能调用 126
一、8086中断及中断源 126
二、中断指令及中断返回指令 126
三、8086的专用中断 127
四、PC DOS的系统功能调用与基本I/O子程序调用 129
五、BIOS中断调用 134
六、返回DOS的中断调用 137
§3.6 80286扩充的指令 138
习题 139
§4.1 汇编语言和汇编程序 144
一、汇编语言(Assembly Language) 144
二、汇编程序(Assembler) 144
第四章 MASM-86宏汇编语言程序 144
§4.2 MASM-86汇编语言程序的规范 146
一、一个简单的汇编语言程序 146
二、段结构 147
三、汇编语言程序的语句类型及语句格式 147
二、表达式及运算符 151
§4.3 8086汇编语言中的标识符、表达式和运算符 151
一、标识符 151
§4.4 伪指令及宏指令 157
一、数据定义及存储器分配伪指令 157
二、符号定义伪指令EQU和= 159
三、标号定义伪指令LABEL 160
四、结构定义伪指令STRUC/ENDS 162
五、记录定义伪指令RECORD 165
六、程序块定义伪指令 168
八、程序计数器$和ORG伪指令 170
七、GROUP伪指令 170
九、宏指令 171
十、常用列表伪指令 173
十一、程序模块连接伪指令PUBLIC和EXTRN 174
§4.5 多模块程序设计及模块间的通信 175
一、模块的定义 175
二、模块命名伪指令NAME 175
四、模块间的交叉访问和信息传送 176
三、多模块内段的连接 176
五、高级语言与汇编语言的接口 179
§4.6 汇编语言程序的上机过程 181
一、汇编语言的工作环境 181
二、汇编语言程序工作盘的建立 181
三、在DOS环境下,建立和运行汇编语言程序的过程 182
四、EXE文件和COM文件 184
五、汇编语言程序上机过程示例 186
习题 189
§5.1 软件研制过程 191
一、系统定义 191
第五章 程序设计的基本方法 191
二、程序设计 193
三、编码 193
四、查错和调试 193
五、文件编制 193
六、维护和再设计 194
§5.2 模块化程序设计(Modular Programming) 194
一、模块的划分与模块的表示 194
二、划分模块的原则 195
§5.3 结构化程序设计(Strutred Programming) 196
一、顺序结构与简单程序设计 197
§5.4 程序的基本结构与基本程序的设计 197
二、条件结构与分支程序设计 199
三、循环结构与循环程序设计 202
四、子程序结构及子程序设计 207
§5.5 一些实用程序的设计 222
一、代码转换 222
二、表的应用和处理 226
三、算术运算程序 235
四、图形显示 242
五、声音的产生与乐曲程序 246
习题 251
一、分类 255
§6.1 半导体存储器的分类及特点 255
第六章 存储器 255
二、半导体存储器的性能指标 256
三、半导体存储器的特点 256
§6.2 随机存储器RAM 257
一、表态SRAM 258
二、动态DRAM 259
三、动态DRAM的刷新及刷新控制器8203 260
四、RAM存储器的组织 261
§6.3 只读存储器ROM 261
一、固定掩膜编程ROM 262
二、可编程序PROM 262
三、紫外光擦除可编程序的UV-EPROM 262
二、不挥发的RAM(NVRAM) 266
§6.4 新型的半导体存储器 266
一、电可擦除的可编程序的E2PROM 266
三、集成RAM(iRAM) 267
四、半导体存储器的备份电源 267
五、常用RAM、ROM、EPROM列表 268
§6.5 主存储器的设计 268
一、半导体存储器芯片选用时应考虑的一些问题 269
二、存储器地址分配 269
三、存储器芯片和CPU的连接 270
四、IBM PC/XT主存储器系统介绍 274
§6.6 外存储器简介 275
四、光盘存储器 279
三、磁泡存储器 279
习题 280
一、为什么要用接口电路 281
§7.1 微计算机和外设间的输入/输出接口 281
二、接口电路中的信息 281
第七章 微计算机的输入/输出及DMA 281
三、接口电路的I/O端口 282
§7.2 CPU和外设数据传送的控制方式 283
一、程序控制方式 283
二、中断控制方式 290
三、直接存储器存取(DMA)控制方式 290
§7.3 IBM PC/XT I/O端口地址分配与地址译码 291
一、系统板上I/O地址 291
二、IBM PC/XT I/O通道 292
§7.4 DMA 8237A 及应用 295
一、8237A的基本功能 295
二、8237A的内部结构及工作原理 296
三、8237A的引脚特性 298
四、8237A的编程 300
五、8237A的编程和使用 305
习题 308
第八章 中断系统 310
§8.1 8086/8088的中断结构 310
一、中断源及优先权级别 310
二、中断处理过程 311
三、中断向量表的设置 311
§8.2 外部中断 313
一、INTR中断(Interrupt) 313
二、NMI中断(Non Maskable Interrupt) 314
二、专用芯片构成的中断优先权管理 315
§8.3 中断的优先权管理 315
一、软件查询和优先级别判断 315
§8.4 8259A 可编程中断控制器及应用 316
一、8259A内部结构和引脚特性 316
二、中断引导方式 318
三、中断优先权管理 319
四、中断触发方式 320
五、8259A的初始化命令字和操作命令字 322
六、8259A的级联 327
八、8259A的应用举例 330
习题 333
第九章 可编程通用接口芯片 335
§9.1 接口芯片的功能与分类 335
一、接口的功能 335
二、接口的分类 336
一、8255A的基本性能 337
§9.2 并行I/O接口 337
二、8255A的内部结构 337
三、8255A的引脚特性和外部连接 338
四、8255A的控制字 340
五、8255A的工作方式 341
六、8255A的应用举例 348
§9.3 串行通信接口 351
一、串行接口及串行通信协议 351
二、串行通信的物理标准 355
三、可编程串行通信接口8251A 357
四、可编程串行异步通信接口8250 367
一、软磁盘 375
§9.4 可编程计数器/定时器8253/8254 376
一、基本功能和工作原理 377
二、8253的内部结构 377
二、硬磁盘 378
三、8253的引脚特性及处部连接 379
四、8253的控制字 380
五、8253的工作方式 381
六、8253的应用举例 387
七、8254与8253的比较 394
习题 395
第十章 32位微处理器与微计算机 397
§10.1 INTEL80386 397
一、性能提升 397
二、80386的内部结构 398
三、寄存器结构 399
四、操作数寻址 400
五、数据类型 401
六、存储器组织 401
七、新增加的指令 403
§10.2 INTEL80486 404
一、主要性能 405
二、与80386的比较 405
习题 405
附录 406
附录一8086/8088指令系统一览表 406
附录二 伪指令表 416
附录三 中断向量地址一览表 419
附录四 DOS功能调用(INT21H) 420
附录五BIOS功能调用 424
附录六 IBM PC ASCII码表 427
附录七 屏编软件NE的常用命令 428
附录八 MAMSM5.0 宏汇编程序出错信息 429
附录九 调试程序DEBUG的主要命令 432
附录十 IBM PC/XT系统板电路原理图 436
参考资料 446