目录 1
第1章 计算机基础知识 1
1.1 为什么要用汇编语言编写程序 1
1.1.1 计算机语言 1
1.1.2 汇编语言的特点 3
1.1.3 汇编语言的应用领域 5
1.2 计算机中数据信息的表示 6
1.2.1 进位计数制 6
1.2.2 计算机中带符号数的表示 8
1.2.3 计算机中定点数与浮点数的表示 10
1.2.4 数的其他编码表示 10
1.2.5 基本的数据类型 12
1.2.6 逻辑代数简介 13
1.3 微型计算机系统 14
1.3.1 微型计算机硬件组成 14
1.3.2 微型计算机系统组成 16
1.4 微处理器 16
1.4.1 微处理器的寄存器结构 17
1.4.2 存储器的组织管理 19
1.5 汇编程序与汇编语言程序开发 22
1.5.1 汇编程序简介 22
1.5.2 汇编语言程序及其开发 23
习题 27
2.1.2 指令系统及指令格式 28
2.1.2 8086指令格式 28
2.1 指令系统概述 28
第2章 寻址方式和指令系统 28
2.2 指令寻址方式 29
2.2.1 固定寻址方式 29
2.2.2 寄存器寻址方式 29
2.2.3 立即寻址方式 29
2.2.4 数据存储器寻址方式 30
2.2.5 与转移地址有关的寻址方式 33
2.3 8086指令系统 36
2.3.1 数据传送指令 36
2.3.2 算术运算类指令 41
2.3.3 位操作指令 46
2.3.4 串处理指令 50
2.3.5 控制转移指令 54
2.3.6 处理机控制指令 60
习题 61
第3章 汇编语言 62
3.1 概述 62
3.1.1 汇编语言的基本规定 62
3.1.3 变量定义及存储器分配 64
3.1.2 常量 64
3.1.4 标号 68
3.1.5 表达式 68
3.2 汇编语言的伪指令 72
3.2.1 段定义伪指令 72
3.2.2 过程定义伪指令 76
3.2.3 程序开始和结束伪指令 77
习题 77
4.2.1 顺序程序的结构 80
4.2 顺序程序设计 80
第4章 汇编语言程序设计的基本技术 80
4.1 程序设计的基本步骤 80
4.2.2 汇编语言程序输入输出的实现 82
4.2.3 顺序程序示例 84
4.3 分支程序设计 88
4.3.1 分支程序的基本结构 88
4.3.2 简单分支程序示例 89
4.3.3 多分支程序设计 91
4.3.4 分支程序设计小结 97
4.4 循环程序设计 98
4.4.1 循环程序的结构 98
4.4.2 单重循环程序设计 99
4.4.3 多重循环程序设计 106
4.4.4 循环程序设计小结 112
习题 112
5.1.2 子程序的定义与说明 115
5.1.1 子程序的基本概念 115
5.1 子程序的基本概念 115
第5章 子程序设计 115
5.2 子程序的设计方法 116
5.2.1 子程序的调用与返回 117
5.2.2 现场保护与恢复 117
5.2.3 主、子程序的参数传递 118
5.2.4 子程序设计举例 124
5.3 子程序的嵌套调用与递归调用 127
5.3.1 子程序的嵌套调用 127
5.3.2 子程序的递归调用 131
习题 136
第6章 高级汇编语言技术 138
6.1 记录和结构 138
6.1.1 结构 138
6.1.2 记录 140
6.2 宏 141
6.2.1 宏定义 141
6.2.2 宏调用与宏展开 142
6.2.3 宏定义与宏调用中的参数 143
6.2.4 宏库的使用 146
6.3 重复汇编 148
6.4 条件汇编 150
6.5 程序模块间通信 152
6.5.1 程序模块间通信伪指令 152
6.5.2 程序模块间通信示例 153
6.5.3 多模块程序文件的编译与连接 154
习题 155
7.1.1 输入输出端口地址和输入输出指令 157
第7章 输入输出与中断 157
7.1 输入输出指令与数据传送方式 157
7.1.2 数据的传送方式 158
7.2 中断 160
7.2.1 中断的基本概念 160
7.2.2 中断处理程序的设计 163
7.3 输入输出程序设计 165
7.3.1 基本输入输出系统BIOS概述 165
7.3.2 键盘处理程序 166
7.3.3 显示输出程序 168
习题 176
第8章 32位机汇编语言编程初步 177
8.1 32位微处理器 177
8.1.1 80X86微处理器的寄存器组 177
8.1.2 80X86保护模式下的存储管理机制 178
8.1.3 32位微处理器扩展寻址方式 181
8.2.2 新增指令 182
8.2.1 指令集的扩展 182
8.2 指令系统扩展 182
8.3 32位汇编语言程序设计基础 186
8.3.1 编译工具 186
8.3.2 32位指令的DOS程序设计 187
8.3.3 Win32应用编程接口API 193
8.3.4 Win32编程基础 194
习题 202
9.1.1 动态链接库基本知识 203
9.1 动态链接库 203
第9章 汇编语言实用程序设计 203
9.1.2 动态链接库的入口函数和导出函数 204
9.1.3 动态链接库的使用 207
9.2 时钟程序 210
9.2.1 计时器 211
9.2.2 时钟程序 211
9.2.3 编写动态链接库文件 216
9.3.1 磁盘文件管理窗口操作功能及构成 221
9.3 磁盘文件管理程序 221
9.3.2 窗口程序设计 222
9.3.3 动态链接库设计 231
习题 235
附录Ⅰ 8086指令系统 236
附录Ⅱ 常用DOS系统功能调用(INT 21H) 240
附录Ⅲ 常用ROM-BIOS功能调用 243
附录Ⅳ 动态调试程序DEBUG的使用方法 246
参考文献 251