上册 1
第一章 概述 1
第一节 引言 1
第二节 计算机中的数和编码系统 2
一、计算机中的数制 2
二、二进制编码 4
三、二进制数的运算 6
四、带符号数的表示法 8
第三节 计算机基础 14
一、计算机的基本结构 14
二、常用的名词术语 15
三、指令程序和指令系统 15
四、初级计算机 16
五、简单程序举例 18
六、寻址方式 23
七、分支 27
第四节 计算机的硬件和软件 32
一、系统软件 32
二、应用软件 32
三、数据库及数据库管理系统 33
第五节 微型计算机的结构 33
一、微型计算机的外部结构 33
二、微型计算机的内部结构 34
第六节 Intel8088的结构 35
一、8088的寄存器结构 35
二、8088的功能结构 36
三、存储器组织 37
第七节 IBM PC的基本配置 38
一、CPU采用Intel8088 39
二、大板上的内存储器结构 39
三、DMA控制器 42
四、定时器/计数器电路 42
五、盒带、扬声器和键盘接口 42
六、I/O扩展槽 42
第二章 8088的指令系统 43
第一节 8088的寻址方式 43
一、立即寻址 43
二、直接寻址 44
三、寄存器寻址 44
四、寄存器间接寻址 44
五、变址寻址 44
六、基址加变址的寻址方式 45
第二节 8088中的标志寄存器 47
第三节 8088的指令系统 49
一、数据传送指令 50
二、算术运算指令 60
三、逻辑运算指令 73
四、串操作指令 83
五、控制传送指令 86
六、处理器控制指令 97
第三章 汇编语言程序设计 99
第一节 汇编语言的格式 99
一、8088汇编语言程序的一个例子 99
二、8088汇编语言源程序的格式 99
第二节 语句行的构成 100
一、标记 100
二、符号 103
三、表达式 104
四、语句 107
第三节 指示性语句 107
一、符号定义语句 107
二、数据定义语句 108
三、段定义语句 114
四、过程定义语句 117
五、结束语句 118
第四节 指令语句 119
一、指令助记符 119
二、指令前缀 119
三、操作数寻址方式 120
四、串操作指令 121
第五节 汇编语言程序设计及举例 124
一、概述 124
二、算术运算程序设计(直线运行程序) 125
三、分支程序设计 129
四、循环程序设计 131
五、字符串处理程序设计 140
六、码转换程序设计 145
七、有关列和表的程序设计 154
八、参数传送技术 169
九、子程序设计 171
十、有关I/O的DOS功能调用 177
十一、宏汇编与条件汇编 191
第四章 8088的总线操作和时序 202
第一节 概述 202
一、指令周期、总线周期和T状态 202
二、CPU的时序和存储器以及外设的时序 202
三、学习CPU时序的目的 204
第二节 8088的总线 205
一、8088的两种组态 205
二、8088的引线 208
第三节 8088典型时序分析 210
一、存储器读周期 210
二、存储器写周期 211
三、输入输出周期 212
四、空转周期 212
五、中断响应周期 212
六、系统复位 212
七、CPU进入和退出保持状态的时序 213
八、8088的交流参数 214
第四节 最大组态下的8088时序 217
一、存储器读周期和存储器写周期 217
二、I/O读和I/O写周期 218
第五节 IBM PC/XT的CPU系统 220
一、8284时钟发生器驱动器 220
二、8288总线控制器 221
三、IBM PC/XT的控制核心和等待状态控制电路 224
第六节 计数器和定时器电路Intel8253-PIT 228
一、概述 228
二、8253-PIT的控制字 230
三、8253-PIT的工作方式 231
四、8253-PIT的编程 237
五、8254-PIT 238
六、IBM PC/XT中的定时器/计数器电路 239
第五章 半导体存储器 241
第一节 半导体存储器的分类 241
一、RAM的种类 241
二、ROM的种类 242
第二节 读写存储器RAM 243
一、基本存储电路 243
二、RAM的结构 244
三、RAM与CPU的连接 246
四、64K位动态RAM存储器 256
第三节 只读存储器(ROM) 265
一、掩模只读存储器 265
二、可擦除的可编程序的只读存储器EPROM 266
第四节 IBM PC/XT的存储器 273
一、存储空间的分配 273
二、ROM子系统 274
三、RAM子系统 274
第六章 输入和输出 283
第一节 输入输出的寻址方式 283
一、存储器对应输入输出方式 283
二、端口寻址的输入输出方式 283
第二节 CPU与外设数据传送的方式 284
一、CPU与I/O设备之间的接口信息 284
二、无条件传送方式 285
三、查询传送方式 286
四、中断传送方式 289
五、直接数据通道传送(DMA) 290
第三节 用8212作为一个输入输出接口 292
一、8212介绍 292
二、8212的工作模式 293
三、用8212作为CPU与纸带读入机(PTR)的接口 294
第四节 DMA控制器 296
一、主要功能 296
二、8237的结构 296
三、8237的工作周期 297
四、8237的引线 298
五、8237年工作模式 300
六、8237的寄存器组和编程 301
七、8237的时序 306
八、IBM PC/XT中的DMA控制逻辑 308
第七章 中断 316
第一节 引言 316
一、为什么要用中断 316
二、中断源 316
三、中断系统的功能 317
第二节 最简单的中断情况 317
一、CPU响应中断的条件 317
二、CPU对中断的响应 318
第三节 中断优先权 319
一、用软件确定中断优先权 319
二、硬件优先权排除电路 320
第四节 中断控制器Intel8259A 322
一、功能 322
二、结构 322
三、8259A的引线 323
四、8259A的中断顺序 324
五、8259A的编程 325
六、8259A的工作方式 330
第五节 8088的中断方式 334
一、外部中断 334
二、内部中断 334
三、中断向量表 335
四、8088中的中断响应和处理过程 335
第六节 IBM PC/XT的中断结构 337
一、中断类型 337
二、IBM PC/XT中系统保留的中断 337
三、中断控制逻辑 338
第八章 并行接口片子 341
第一节 可编程的输入输出接口芯片8255A-5 341
一、8255A的结构 341
二、方式选择 343
三、方式0的功能 346
四、方式1的功能 347
五、方式2的功能 352
第二节 IBM PC/XT中的8255A-5的使用 354
一、IBM PC/XT中使用8255A-5的基本情况 354
二、8255A-5和系统配置开关电路 356
三、键盘接口 358
第九章 串行通信及接口电路 361
第一节 串行通信 361
一、概述 361
二、串行传送中的几个问题 363
三、串行I/O的实现 367
四、串行通信的校验方法 369
五、串行通信规程 371
第二节 可编程异步通信接口8250 374
一、基本功能 374
二、内部结构 374
三、8250的引线 380
四、8250的初始化编程 383
第三节 IBM PC/XT异步通信适配器电路 384
一、地址译码电路 384
二、异步通信适配器的通信接口 384
三、调用BIOS的通信方法 386
第四节 Intel8251A可编程通信接口 388
一、8251的基本性能 388
二、8251的方框图 389
三、接口信号 390
四、8215的编程 392
五、8251的应用举例 394
附录 397
附录1 ASCII(美国信息交换标准码)字符表(7位码) 397
附录2 8088指令系统表 398
附录3 运行汇编语言的源程序的过程 410
参考书目 414
下册 415
第十章 DOS、文件、命令 415
第一节 DOS与文件 415
一、DOS简介 415
二、文件简介 418
三、文件目录树形结构 422
第二节 DOS命令 424
一、DOS用的一些键 424
二、程序的自动执行 426
三、单驱动器系统 427
四、用户硬盘准备 427
五、命令简介 435
六、磁盘操作命令 437
七、文件操作命令 448
八、目录操作命令 459
九、日期与时间命令 464
十、外设命令 465
十一、系统命令 467
第三节 标准输入、输出 469
一、简介 469
二、标准输入输出改向功能 469
三、标准输入输出管道功能 470
四、筛选程序(SORT、FIND、MORE) 470
第四节 配置系统 472
一、简介 472
二、BREAK命令 473
三、BUFFERS命令 473
四、COUNTRY命令 474
五、DEVICE命令(含SYS驱动程序) 475
六、FCBS命令 478
七、FILES命令 478
八、LASTDRIVE命令 478
九、SHELL命令 479
十、STACKS命令 479
十一、配置系统举例 479
第五节 批文件命令 480
一、建立批文件 480
二、执行批文件 481
三、AUTOEXEC.BAT(自动执行)文件 481
四、建立带有可替换参数的批文件及其执行 481
五、ECHO子命令 482
六、FOR子命令 482
七、GOTO子命令 483
八、IF子命令 483
九、PAUSE子命令 484
十、REM子命令 484
十一、SHIFT子命令 484
十二、CALL子命令 485
第六节 DOS命令简表 485
第十一章 DOS实用程序 490
第一节 行编辑程序(EDLIN) 490
一、简介 490
二、怎样启动EDLIN程序 490
三、EDLIN命令的参数 492
四、插入行命令(I) 492
五、显示行命令(L) 494
六、删除行命令(D) 494
七、编辑行命令 496
八、结束编辑程序命令(E) 496
九、退出编辑程序命令(Q) 497
十、附加行命令(A) 497
十一、拷贝行命令(C) 497
十二、移动行命令(M) 497
十三、翻页命令(P) 498
十四、替换命令(R) 498
十五、查找命令(S) 499
十六、传送行命令(T) 500
十七、写人命令(W) 501
十八、EDLIN命令一览表 501
第二节 连接程序(LINK) 502
一、简介 502
二、文件约定 502
三、段、组和类的定义 503
四、命令提示 503
五、如何启动连接程序及举例 505
第三节 调试程序DEBUG 513
一、如何调用DEBUG程序 513
二、DEBUG程序对寄存器和标志位的初始化 514
三、有关DEBUG命令的一些共同信息 514
四、显示内存单元内容的命令 514
五、修改存贮单元内容的命令 516
六、检查和修改寄存器内容的命令 517
七、运行命令 519
八、追踪命令 519
九、汇编命令 520
十、反汇编命令 522
十一、输入命令 523
十二、输出命令 524
十三、命名命令 524
十四、装入命令 525
十五、写命令 525
十六、退出命令 526
十七、DEBUG程序应用举例 526
第十二章 DOS技术资料 536
第一节 DOS版本发展过程 536
第二节 DOS技术资料 537
一、DOS的内存分配 537
二、DOS的程序段 538
三、DOS磁盘结构与盘分配 540
四、文件目录与文件分配表(FAT) 543
五、文件管理 546
第三节 DOS中断与功能调用 554
一、DOS中断 554
二、功能调用 557
第四节 功能调用举例 588
附录 594
附录4 如何启动DOS系统 594
参考书目 596