第1章 汇编语言入门 1
1.1认识汇编语言 1
1.1.1机器语言 1
1.1.2汇编语言 2
1.1.3一个显示字符串的汇编语言程序 3
1.2数据在计算机中的表示 4
1.2.1数值数据在计算机中的表示 4
1.2.2 BCD码表示 7
1.2.3字符编码 8
1.3 80x86微处理器 11
1.3.1 80x86微处理器的演化 11
1.3.2 80x86微处理器的组成 13
1.3.3 80x86微处理器的编程结构 14
1.4存储器与堆栈 16
1.4.1存储器 17
1.4.2实模式下存储器的组织 18
1.4.3保护模式下存储器的组织 21
1.4.4堆栈的结构与数据存取 22
本章小结 24
习题 24
第2章 寻址方式和指令 26
2.1 80x86指令系统概述 26
2.1.1 80x86的指令种类 26
2.1.2 80x86的指令格式 29
2.2 80x86指令操作数的寻址 31
2.2.1 80x86指令的操作数类型 31
2.2.2立即数寻址 32
2.2.3寄存器操作数的寻址 33
2.2.4存储器操作数的寻址 34
2.3 80x86的几类基本指令 39
2.3.1数据传送类指令 39
2.3.2算术运算类指令 46
2.3.3逻辑运算类指令 52
2.3.4处理器控制指令 59
本章小结 60
习题 61
第3章 汇编语言的要素 65
3.1伪指令 65
3.1.1段定义伪指令 65
3.1.2源程序开始和结束伪指令 71
3.1.3数据定义及存储器分配伪指令 72
3.1.4其他伪指令 75
3.2汇编语言语句格式 78
3.2.1名字项 78
3.2.2操作项 79
3.2.3操作数项 79
3.2.4注释项 83
3.2.5汇编语言源程序的格式 83
3.3常用的DOS系统功能调用 85
3.3.1概述 85
3.3.2常用的输入/输出系统功能调用 85
本章小结 90
习题 90
第4章 程序逻辑与控制 93
4.1程序控制结构 93
4.1.1分支程序结构 93
4.1.2循环程序结构 94
4.1.3子程序结构 95
4.2分支结构程序设计 95
4.2.1无条件转移指令 96
4.2.2条件转移指令 98
4.2.3分支程序设计方法 102
4.3循环结构程序设计 107
4.3.1循环指令 107
4.3.2单重循环程序设计 108
4.3.3多重循环程序设计 113
4.4串操作 115
4.4.1串操作指令 115
4.4.2字符串程序处理程序举例 121
本章小结 123
习题 123
第5章子程序和宏 125
5.1子程序 125
5.1.1子程序调用与返回指令 125
5.1.2子程序设计的一般方法 130
5.1.3子程序设计举例 134
5.2宏 139
5.2.1宏定义与宏调用 140
5.2.2宏定义中的参数 142
5.2.3宏操作符 143
5.2.4嵌套的宏 144
5.2.5与宏相关的伪指令 146
5.3重复汇编和条件汇编 148
5.3.1重复汇编 148
5.3.2条件汇编 149
本章小结 150
习题 151
第6章 输入/输出与中断 153
6.1输入/输出的基本概念 153
6.1.1 I/O地址与输入/输出指令 153
6.1.2数据传送控制方式 156
6.1.3存取RT/CMOS RAM 157
6.2查询方式数据传送 159
6.2.1查询方式 159
6.2.2查询方式输入/输出程序设计 160
6.3 80x86的中断系统 162
6.3.1 80x86的中断分类 163
6.3.2中断向量表 164
6.3.3中断处理过程 167
6.3.4中断优先级和中断嵌套 168
6.4中断处理程序设计 169
6.4.1设置和获取中断向量 169
6.4.2中断处理程序的设计 171
6.4.3 BIOS中断调用 177
本章小结 179
习题 180
第7章 键盘、鼠标和视频的操作 181
7.1键盘输入 181
7.1.1 BIOS键盘数据区 181
7.1.2键盘输入的INT 16H操作 185
7.2鼠标操作 187
7.2.1基本的鼠标操作 187
7.2.2鼠标操作程序设计举例 189
7.3视频的设置 192
7.3.1文本显示模式 192
7.3.2彩色文本模式的BIOS中断调用 194
7.3.3图形显示模式 196
本章小结 202
习题 203
第8章 磁盘文件存取 204
8.1磁盘的记录方式 204
8.1.1磁盘记录信息的地址 204
8.1.2磁盘系统区和数据区 206
8.1.3磁盘目录及文件分配表 207
8.2磁盘存取方式——文件代号 208
8.2.1文件代号式磁盘存取的基本概念 209
8.2.2常用的磁盘文件管理DOS功能调用 211
8.2.3写磁盘文件 213
8.2.4读磁盘文件 216
8.2.5移动读/写指针 220
8.3 BIOS磁盘存取中断调用和编程 224
8.3.1基本的BIOS磁盘操作 224
8.3.2 BIOS磁盘操作程序设计举例 226
本章小结 229
习题 229
第9章 汇编语言扩展 231
9.1 32位指令及其编程 231
9.1.1 32位处理器寄存器结构 231
9.1.2 32位处理器指令系统 234
9.1.3 32位指令的程序设计 236
9.2多媒体指令 239
9.2.1 MMX指令 239
9.2.2 SSE指令 246
9.2.3 SSE指令集的发展 253
9.3浮点运算指令及编程 255
9.3.1协处理器的内部结构 255
9.3.2协处理器的指令系统 258
9.3.3浮点运算指令编程举例 262
本章小结 264
习题 265
第10章Win32汇编 267
10.1 Win32汇编的环境和基础 267
10.1.1 Win32汇编的编程环境 267
10.1.2 Win32汇编程序的结构 272
10.1.3 API函数的使用 274
10.2 Win32汇编语言的基本语法 277
10.2.1标号和变量 277
10.2.2子程序设计 278
10.2.3高级语法 280
10.3 Win32汇编程序设计 283
10.3.1 Win32窗口程序设计 283
10.3.2菜单和加速键程序设计 288
10.3.3工具栏和状态栏的使用 294
10.3.4图形界面的操作 296
本章小结 299
习题 300
汇编语言实验指导 301
实验1初级程序的编写与调试实验 301
实验2汇编语言程序上机过程 304
实验3分支程序实验 305
实验4循环程序实验 307
实验5子程序实验 308
实验6字符处理程序实验 311
实验7键盘和窗口程序 314
实验8显示器与磁盘文件I/O程序设计 315
附录A汇编语言编程和调试工具 319
A.1宏汇编MASM 319
A.2调试工具 324
附录B DOS系统功能调用和BIOS中断调用 327
参考文献 335