第一章 预备知识 1
§1.1 基本概念 1
§1.2 系统结构 1
1.2.1 iAPX86/88微处理器系列概况 1
目录 1
1.2.2 系统组成 3
1.2.3 8086处理器 4
1.2.4 存储器及其分配方式 6
§1.3 数据表示 8
1.3.1 十六进制数 8
1.2.6 8089处理器 8
1.2.5 8087处理器 8
1.3.2 8086处理的数据类型 9
1.3.3 8087处理的数据类型 11
练习一 14
第二章 汇编语言 16
§2.1 例题及操作 16
2.1.1 例题简介 16
2.1.2 上机操作初步 19
2.2.2 约定的名字 20
§2.2 基本元素 20
2.2.1 字符集 20
2.2.3 定义的名字 21
2.2.4 常数 25
2.2.5 表达式 28
§2.3 语句 30
2.3.1 语句的类型 30
2.3.2 数据语句 31
2.3.3 列表控制语句 33
2.3.4 一般执行性语句 34
§2.4 程序结构 54
2.4.1 程序结构语句 54
2.4.2 源程序结构 60
2.4.3 一个简单的顺序程序 62
§2.5 结构性数据语句 66
2.5.1 记录数据语句 66
2.5.2 结构数据语句 69
练习二 71
3.1.1 汇编语言的上机过程 73
§3.1 上机过程 73
第三章 上机实习 73
3.1.2 列表文件及交叉参考列表文件 74
3.1.3 连接装配(LINK) 76
§3.2 程序的检查、调试与修改 76
3.2.1 程序的检查及其过程 76
3.2.2 程序的调试 78
3.2.3 程序的修改 80
§3.3 调试系统 81
3.3.1 调试系统的种类 81
3.3.2 DEBUG的功能 82
练习三 85
第四章 程序设计的基本方法 86
§4.1 顺序程序 86
4.1.1 运算语句概述 86
4.1.2 逻辑运算语句 87
4.1.3 简单的输入输出功能模块的调用 95
§4.2 分支程序设计 96
4.2.1 程序分支的概念 96
4.2.2 实现程序分支的语句 97
4.2.3 简单的分支程序 102
4.2.4 多分支程序 105
4.2.5 分支程序举例 107
§4.3 循环程序设计 112
4.3.1 实现程序循环的语句 113
4.3.2 单重循环程序 113
4.3.3 多重循环程序 119
§4.4 子程序与主程序 121
4.4.1 子程序与主程序的概念 121
4.4.2 调用与返回语句 123
4.4.3 主程序与子程序的信息交换及现场保护 127
4.4.4 递归子程序 133
§4.5 8087语句及程序 135
4.5.1 8087现场状态寄存器 135
4.5.2 8087语句的类型及一般形式 139
4.5.3 8087语句的功能 139
4.5.4 8087语句的特点 143
4.5.5 使用8087语句的程序举例 147
练习四 149
5.1.1 段间转移语句 152
§5.1 段间转移 152
第五章 汇编语言的扩展 152
5.1.2 模块内的段间转移 153
5.1.3 模块间的段间转移 155
§5.2 宏定义语句 159
5.2.1 等价语句 159
5.2.2 宏定义与宏调用语句 160
5.2.3 重复块语句 164
5.2.4 宏定义的退出 165
5.2.5 宏调用 166
§5.3 条件汇编语句 171
5.3.1 条件汇编语句的种类及形式 171
5.3.2 条件汇编语句的功能 171
5.3.3 条件汇编语句的应用例题 173
练习五 174
第六章 中断系统与控制性语句 175
§6.1 中断的概念 175
6.1.1 中断的一般概念 175
6.1.2 8086/8088的中断源及其分类 175
6.1.4 中断级 176
6.1.3 中断方式码 176
§6.2 程序状态及控制性语句 177
6.2.1 程序状态 177
6.2.2 中断与中断扫描 177
6.2.3 控制性语句 177
§6.3 中断的响应及处理 181
6.3.1 中断入口表 181
6.3.2 中断的响应过程 182
6.3.3 中断处理程序 184
6.4.1 基本输入输出系统(BIOS)的调用 188
§6.4 系统功能调用 188
6.4.2 DOS层功能模块调用 197
练习六 204
第七章 输入输出程序设计 205
§7.1 一般概念 205
7.1.1 I/O空间 206
7.1.2 CPU与外设的信息交换方式 207
§7.2 访问端口的语句及简单的I/O程序 211
7.2.1 访问端口的语句 211
7.2.2 简单的I/O程序 212
7.3.1 8089处理器的结构 214
§7.3 IOP方式的实现与MA89汇编语言 214
7.3.2 MA89汇编语言简介 222
7.3.3 通道程序与I/O程序 231
练习七 235
第八章 软件设计中的基本程序设计技巧 236
§8.1 查表方法 236
8.1.1 直接查表法与顺序查表法 236
8.1.2 二分查表法 239
§8.2 浮动程序与再定位程序 242
8.2.1 程序的浮动性 242
§8.3 再入式程序 247
8.2.2 再定位文件 247
8.3.1 什么是再入式程序 248
8.3.2 再入式程序的实现 249
8.3.3 程序的动态特征 255
练习八 256
第九章 80286与80386的扩充功能 257
§9.1 80286的结构及扩充功能 257
9.1.1 80286的结构 257
9.1.3 保护虚地址方式的存储分配及保护机制 260
9.1.2 80286的操作方式 260
9.2.1 80286的MASM增强的语句 266
§9.2 80286增强与增加的指令 266
9.2.2 80286的MASM新增加的语句 269
§9.3 80386扩充的结构要点与功能 274
9.3.1 80386扩充的结构要点 274
9.3.2 80386的扩充功能 278
练习九 280
综合练习 280
第一部分:8086、80286语句表 282
附录一 语句表 282
第二部分:8087语句表 303
附录二 MASM的提示及开关 313
附录三 LINK的提示及开关 314
附录四 ASCII字符与编码对照表 315
附录五 MASM伪操作符表 317
附录六 IBM-PC DOS系统中断向量表 324
附录七 PC-DOS系统功能模块 326
参考资料 345