基础篇 1
第1章 微型计算机系统概述 1
1.1微型计算机系统简介 2
1.1.1微型计算机发展史 2
1.1.2微处理器的性能特点 3
1.1.3计算机的发展趋势 4
1.1.4微型计算机应用领域 6
1.2微型计算机系统的基本组成 7
1.2.1微型计算机硬件和软件概述 8
1.2.2微型计算机结构 11
1.2.3 RISC和CISC 11
1.3习题与综合练习 13
第2章 微型计算机系统结构 14
2.1 8086/8088微处理器 15
2.1.1 CPU结构 15
2.1.2寄存器结构 17
2.1.3 8086/8088的引脚介绍 21
2.2工作模式 25
2.2.1最小工作模式和系统总线周期时序 25
2.2.2最大工作模式 29
2.3工作过程 32
2.4一个完整的源程序 32
2.5习题与综合练习 33
第3章 80X86指令系统 35
3.1寻址方式 36
3.1.1操作数类型 36
3.1.2寻址方式 36
3.2指令系统 43
3.2.1数据传送指令 43
3.2.2算术运算指令 49
3.2.3逻辑运算指令 59
3.2.4移位指令 62
3.2.5转移指令 65
3.2.6字符串操作指令 73
3.2.7处理器控制指令 78
3.2.8输入/输出指令 80
3.2.9中断指令 81
3.2.10某些指令的巧妙用法 83
3.3 80286/80386/80486 CPU的新增指令 85
3.3.1 80286/80386/80486 CPU实地址存储器管理 85
3.3.2 80286 CPU相对8086 CPU增加的指令 85
3.3.3 80386 CPU相对80286 CPU增加的指令 88
3.3.4 80486 CPU相对于80386 CPU增加的指令 98
3.4习题与综合练习 100
第4章 高级汇编语言指令技术 102
4.1汇编语言语句类型 103
4.1.1语句类别 103
4.1.2语句结构 103
4.1.3指令语句操作数 104
4.1.4表达式用运算符和操作符 106
4.2汇编语言伪指令 110
4.2.1符号定义伪指令 111
4.2.2数据定义伪指令 112
4.2.3段和模块定义伪指令 114
4.2.4模块通信伪指令 116
4.2.5列表控制伪指令 117
4.2.6子程序定义伪指令 118
4.2.7其他伪指令 118
4.3宏汇编伪指令 119
4.4结构和记录 124
4.4.1结构 124
4.4.2记录 127
4.5条件汇编 129
4.6汇编语言程序设计 131
4.6.1汇编语言源程序的一般结构 131
4.6.2段寄存器的装填 132
4.6.3 IBM-PC中程序正确返回DOS问题 133
4.6.4检查程序执行结果的简单方法 133
4.7习题与综合练习 134
第5章 DOS和BIOS系统功能调用 137
5.1 DOS系统功能调用 138
5.1.1概述 138
5.1.2 DOS功能调用分组 138
5.1.3常用的DOS INT 21H功能调用 140
5.1.4磁盘文件管理 144
5.2 BIOS功能调用 151
5.2.1概述 151
5.2.2常用的BIOS功能调用 152
5.2.3图形显示程序设计 154
5.3习题与综合练习 160
第6章 基本程序设计 162
6.1顺序程序设计 163
6.1.1存储单元内容移位 163
6.1.2乘法运算与乘10运算 163
6.1.3屏蔽与组合 164
6.1.4字节分离 165
6.1.5单字节压缩BCD数加法运算 165
6.1.6两个字节的二进制数加法 166
6.1.7取数的反码和补码 167
6.1.8平方表 168
6.2分支程序设计 169
6.2.1单重分支结构程序 169
6.2.2多重分支结构程序 171
6.3循环程序设计 178
6.3.1循环程序的结构 178
6.3.2单重循环程序 179
6.3.3多重循环程序 183
6.3.4循环次数未知的循环程序 187
6.3.5“位”控制循环程序 189
6.4子程序设计 190
6.4.1子程序与主程序 191
6.4.2子程序段内调用和返回 191
6.4.3子程序段间调用和返回 193
6.4.4调用程序和子程序间的参数传递 195
6.4.5寄存器内容的保护 204
6.4.6子程序的嵌套使用 206
6.4.7关于递归子程序、可重入子程序 207
6.5具有模块结构的程序设计 210
6.5.1概述 211
6.5.2模块的组合方式 212
6.5.3模块间的通信 214
6.5.4模块化程序设计的注意点 214
6.6习题与综合练习 216
能力篇 220
第7章 复杂程序设计 220
7.1定点数算术运算程序 221
7.1.1定点数运算的概念 221
7.1.2定点数加法运算 222
7.1.3定点数减法运算 225
7.1.4定点数乘法运算 227
7.1.5定点数除法运算 232
7.2浮点数算术运算程序 240
7.2.1浮点数概念 240
7.2.2浮点数的规格化 241
7.2.3浮点数加减运算 242
7.2.4浮点数乘除运算 242
7.3代码转换 243
7.3.1二进制码与ASCII码间的相互转换 243
7.3.2二进制码与BCD码间的相互转换 245
7.3.3二进制数到八段显示码的转换 251
7.4字符数据处理 253
7.4.1字符串比较 253
7.4.2字符串检索 254
7.4.3字符的删除与插入 255
7.4.4字符串统计 258
7.5表处理 260
7.5.1表的查询 260
7.5.2表的插入与删除 263
7.6检索 265
7.6.1顺序检索 265
7.6.2折半检索 268
7.6.3散列值检索 270
7.7排序 273
7.7.1交换排序 273
7.7.2选择排序 275
7.7.3插入排序 277
7.8一个完整的模块化程序设计示例 281
7.9习题与综合练习 288
第8章 汇编语言中一些特殊命令的用法 291
8.1 .EXE文件和.COM文件 292
8.2程序段前缀 294
8.3汇编程序(ASM,MASM) 295
8.3.1汇编程序的类别 295
8.3.2汇编过程 295
8.3.3运行环境 296
8.3.4操作过程 296
8.3.5汇编操作示例 297
8.4连接程序(LINK) 300
8.4.1连接程序的作用 300
8.4.2连接过程 301
8.4.3 LINK的使用与操作 301
8.5调试程序(DEBUG) 306
8.5.1 DEBUG功能及其启动 306
8.5.2 DEBUG各命令的用法 307
8.5.3应用举例 320
8.6符号调试程序SYMDEB简介 323
8.7上机操作辅助程序介绍 325
8.7.1显示(或打印)单个字符 326
8.7.2显示字符串 326
8.7.3键入单个字符 327
8.7.4键入字符串 327
8.7.5程序正常结束 328
8.8汇编语言与高级语言的连接 329
8.8.1 TURBO C调用汇编子程序 329
8.8.2 TURBO C行间嵌入汇编 331
8.9习题与综合练习 332
自测篇 334
附录 自测试卷及参考答案 334
自测试卷一 335
自测试卷一参考答案 337
自测试卷二 340
自测试卷二参考答案 343
参考文献 361