书籍详情
80X86汇编语言程序设计
作者:王成耀编
出版社:人民邮电出版社
出版时间:2002-01-01
ISBN:9787115093776
定价:¥26.00
购买这本书可以去
内容简介
本书以当前“汇编语言程序设计”课程的教学为目标,以Intel 80x86 CPU指令系统与Microsoft宏汇编MASM 6.1X为背景,系统介绍了汇编语言程序设计的基本理论和方法。内容主要包括:汇编语言程序设计的基础知识、实模式下的80x86指令、常用伪指令、源程序格式、程序设计的基本技术、多模块程序设计、输入输出和中断程序设计等。此外,简要介绍了32位保护模式以及Win32汇编语言程序设计的基本方法。本书是高等院校计算机及相关专业本科生的教材,也可作为计算机工作者学习汇编语言的自学参考书。
作者简介
暂缺《80X86汇编语言程序设计》作者简介
目录
第1章 基础知识 1
1.1 认识汇编语言 1
1.1.1 机器语言 1
1.1.2 汇编语言 2
1.1.3 高级语言 3
1.1.4 对汇编语言的评价 3
1.2 数据表示 4
1.2.1 数据组织 5
1.2.2 无符号数与带符号数 6
1.2.3 字符的ASCII码表示 9
1.2.4 BCD码 9
1.2.5 注解 10
1.3 基本位操作 10
1.3.1 逻辑操作 10
1.3.2 移位与循环移位 11
1.4 小结 12
习题 12
第2章 80x86计算机系统组织 14
2.1 80x86计算机的基本结构 14
2.1.1 CPU 14
2.1.2 系统总线 15
2.1.3 内存 16
2.1.4 I/O子系统 19
2.2 80x86 CPU的寄存器组 19
2.3 80x86 CPU的工作模式 22
2.3.1 实模式 22
2.3.2 保护模式 23
2.3.3 虚拟8086模式 24
2.4 标志位 24
2.4.1 状态标志 24
2.4.2 深入认识CF和OF 25
2.4.3 控制标志 27
2.5 小结 27
习题 28
第3章 80x86指令系统 30
3.1 指令格式 30
3.1.1 指令的书写格式 30
3.1.2 操作数的形式 31
3.2 寻址方式 31
3.2.1 8086寻址方式 31
3.2.2 32位CPU扩展寻址方式 35
3.3 指令系统 37
3.3.1 数据传送指令 38
3.3.2 算术指令 45
3.3.3 位操作指令 55
3.3.4 控制转移指令 62
3.3.5 标志处理指令 69
3.3.6 串操作指令 69
3.3.7 处理器控制指令 73
3.4 容易犯的错误 74
3.5 实例 75
3.6 小结 78
习题 78
第4章 汇编语言程序格式 81
4.1 地址计数器 81
4.2 汇编语言语句 81
4.2.1 语句格式 81
4.2.2 表达式 82
4.2.3 常数 82
4.2.4 变量、标号与地址表达式 83
4.3 基本伪指令 84
4.3.1 处理器选择伪指令 84
4.3.2 段定义伪指令 85
4.3.3 符号定义伪指令 85
4.3.4 变量定义伪指令 86
4.3.5 LABEL 88
4.3.6 ASSUME 89
4.3.7 源程序结束伪指令 90
4.3.8 ORG 90
4.3.9 对齐伪指令 90
4.4 操作符 91
4.4.1 地址操作符 91
4.4.2 类型操作符 92
4.5 汇编语言源程序结构 96
4.5.1 源程序的一般结构 96
4.5.2 常用的源程序基本框架 97
4.6 汇编语言程序的开发 101
4.6.1 开发过程 101
4.6.2 汇编语言程序的开发环境 103
4.6.3 汇编器ML 103
4.6.4 调试器CodeView 106
4.7 小结 113
习题 114
第5章 基本控制结构 117
5.1 顺序结构 117
5.2 字符与字符串的输入/输出 119
5.3 分支结构 128
5.3.1 灵活运用无条件转移指令 128
5.3.2 双分支结构 129
5.3.3 多分支结构 132
5.4 循环结构 138
5.4.1 循环结构的基本形式 138
5.4.2 循环程序的控制方法 139
5.5 串操作 152
5.5.1 串操作指令的用途 152
5.5.2 字符串处理 153
5.6 小结 161
习题 161
第6章 过程 164
6.1 过程概述 164
6.1.1 过程定义 164
6.1.2 过程调用和返回 165
6.2 过程的参数传递 168
6.2.1 用变量传递参数 168
6.2.2 用寄存器传递参数 170
6.2.3 用地址表传递参数 171
6.2.4 用堆栈传递参数 172
6.2.5 用代码流传递参数 178
6.3 过程实例 181
*6.4 递归过程 184
6.5 小结 188
习题 189
第7章 汇编语言的扩展 192
7.1 结构 192
7.1.1 结构类型的定义 192
7.1.2 结构变量的定义 192
7.1.3 结构变量及其字段的访问 193
7.2 宏指令 195
7.2.1 宏定义、宏调用与宏展开 195
7.2.2 与宏有关的伪指令 198
7.2.3 宏操作符 199
7.2.4 宏指令与过程的区别 200
7.3 重复块 201
7.3.1 REPEAT 201
7.3.2 FOR 201
7.3.3 FORC 202
*7.4 条件汇编 203
7.5 多模块程序设计 205
7.5.1 包含文件 206
7.5.2 多个模块的连接 206
7.5.3 段定义的进一步说明 207
7.5.4 模块间的通信 211
*7.5.5 Make文件 213
*7.5.6 过程库 215
*7.5.7 简化段定义 217
7.6 小结 219
习题 220
第8章 输入/输出与中断 223
8.1 输入/输出 223
8.1.1 I/O原理 223
8.1.2 I/O指令 223
8.2 80x86的中断系统 227
8.2.1 中断的基本概念 227
8.2.2 中断指令 228
8.2.3 中断分类 229
8.3 DOS与BIOS服务 233
8.3.1 DOS系统调用 233
8.3.2 BIOS服务 234
*8.4 DOS环境下的可执行程序 235
8.4.1 程序段前缀(PSP) 235
8.4.2 .exe文件与.com文件 236
8.4.3 程序结束的另一种方法 237
8.5 中断服务程序设计 238
8.5.1 中断服务程序设计的基本方法 238
*8.5.2 驻留程序设计 242
8.5.3 键盘程序设计 243
8.6 小结 254
习题 254
*第9章 Win32汇编语言编程初步 256
9.1 32位保护模式 256
9.1.1 基本概念 256
9.1.2 内存寻址机制 257
9.1.3 指令在实模式与32位保护模式下的差异 262
9.2 Win32编程基础 263
9.2.1 开发工具 264
9.2.2 Win32 API 264
9.2.3 源程序的基本结构 266
9.2.4 应用实例 267
9.3 小结 275
习题 276
附录 277
附录1 标准ASCII码字符集 277
附录2 80x86指令系统 279
附录3 调试器DEBUG 290
附录4 Windows 104键键盘扫描码 298
索引 300
参考文献 307
1.1 认识汇编语言 1
1.1.1 机器语言 1
1.1.2 汇编语言 2
1.1.3 高级语言 3
1.1.4 对汇编语言的评价 3
1.2 数据表示 4
1.2.1 数据组织 5
1.2.2 无符号数与带符号数 6
1.2.3 字符的ASCII码表示 9
1.2.4 BCD码 9
1.2.5 注解 10
1.3 基本位操作 10
1.3.1 逻辑操作 10
1.3.2 移位与循环移位 11
1.4 小结 12
习题 12
第2章 80x86计算机系统组织 14
2.1 80x86计算机的基本结构 14
2.1.1 CPU 14
2.1.2 系统总线 15
2.1.3 内存 16
2.1.4 I/O子系统 19
2.2 80x86 CPU的寄存器组 19
2.3 80x86 CPU的工作模式 22
2.3.1 实模式 22
2.3.2 保护模式 23
2.3.3 虚拟8086模式 24
2.4 标志位 24
2.4.1 状态标志 24
2.4.2 深入认识CF和OF 25
2.4.3 控制标志 27
2.5 小结 27
习题 28
第3章 80x86指令系统 30
3.1 指令格式 30
3.1.1 指令的书写格式 30
3.1.2 操作数的形式 31
3.2 寻址方式 31
3.2.1 8086寻址方式 31
3.2.2 32位CPU扩展寻址方式 35
3.3 指令系统 37
3.3.1 数据传送指令 38
3.3.2 算术指令 45
3.3.3 位操作指令 55
3.3.4 控制转移指令 62
3.3.5 标志处理指令 69
3.3.6 串操作指令 69
3.3.7 处理器控制指令 73
3.4 容易犯的错误 74
3.5 实例 75
3.6 小结 78
习题 78
第4章 汇编语言程序格式 81
4.1 地址计数器 81
4.2 汇编语言语句 81
4.2.1 语句格式 81
4.2.2 表达式 82
4.2.3 常数 82
4.2.4 变量、标号与地址表达式 83
4.3 基本伪指令 84
4.3.1 处理器选择伪指令 84
4.3.2 段定义伪指令 85
4.3.3 符号定义伪指令 85
4.3.4 变量定义伪指令 86
4.3.5 LABEL 88
4.3.6 ASSUME 89
4.3.7 源程序结束伪指令 90
4.3.8 ORG 90
4.3.9 对齐伪指令 90
4.4 操作符 91
4.4.1 地址操作符 91
4.4.2 类型操作符 92
4.5 汇编语言源程序结构 96
4.5.1 源程序的一般结构 96
4.5.2 常用的源程序基本框架 97
4.6 汇编语言程序的开发 101
4.6.1 开发过程 101
4.6.2 汇编语言程序的开发环境 103
4.6.3 汇编器ML 103
4.6.4 调试器CodeView 106
4.7 小结 113
习题 114
第5章 基本控制结构 117
5.1 顺序结构 117
5.2 字符与字符串的输入/输出 119
5.3 分支结构 128
5.3.1 灵活运用无条件转移指令 128
5.3.2 双分支结构 129
5.3.3 多分支结构 132
5.4 循环结构 138
5.4.1 循环结构的基本形式 138
5.4.2 循环程序的控制方法 139
5.5 串操作 152
5.5.1 串操作指令的用途 152
5.5.2 字符串处理 153
5.6 小结 161
习题 161
第6章 过程 164
6.1 过程概述 164
6.1.1 过程定义 164
6.1.2 过程调用和返回 165
6.2 过程的参数传递 168
6.2.1 用变量传递参数 168
6.2.2 用寄存器传递参数 170
6.2.3 用地址表传递参数 171
6.2.4 用堆栈传递参数 172
6.2.5 用代码流传递参数 178
6.3 过程实例 181
*6.4 递归过程 184
6.5 小结 188
习题 189
第7章 汇编语言的扩展 192
7.1 结构 192
7.1.1 结构类型的定义 192
7.1.2 结构变量的定义 192
7.1.3 结构变量及其字段的访问 193
7.2 宏指令 195
7.2.1 宏定义、宏调用与宏展开 195
7.2.2 与宏有关的伪指令 198
7.2.3 宏操作符 199
7.2.4 宏指令与过程的区别 200
7.3 重复块 201
7.3.1 REPEAT 201
7.3.2 FOR 201
7.3.3 FORC 202
*7.4 条件汇编 203
7.5 多模块程序设计 205
7.5.1 包含文件 206
7.5.2 多个模块的连接 206
7.5.3 段定义的进一步说明 207
7.5.4 模块间的通信 211
*7.5.5 Make文件 213
*7.5.6 过程库 215
*7.5.7 简化段定义 217
7.6 小结 219
习题 220
第8章 输入/输出与中断 223
8.1 输入/输出 223
8.1.1 I/O原理 223
8.1.2 I/O指令 223
8.2 80x86的中断系统 227
8.2.1 中断的基本概念 227
8.2.2 中断指令 228
8.2.3 中断分类 229
8.3 DOS与BIOS服务 233
8.3.1 DOS系统调用 233
8.3.2 BIOS服务 234
*8.4 DOS环境下的可执行程序 235
8.4.1 程序段前缀(PSP) 235
8.4.2 .exe文件与.com文件 236
8.4.3 程序结束的另一种方法 237
8.5 中断服务程序设计 238
8.5.1 中断服务程序设计的基本方法 238
*8.5.2 驻留程序设计 242
8.5.3 键盘程序设计 243
8.6 小结 254
习题 254
*第9章 Win32汇编语言编程初步 256
9.1 32位保护模式 256
9.1.1 基本概念 256
9.1.2 内存寻址机制 257
9.1.3 指令在实模式与32位保护模式下的差异 262
9.2 Win32编程基础 263
9.2.1 开发工具 264
9.2.2 Win32 API 264
9.2.3 源程序的基本结构 266
9.2.4 应用实例 267
9.3 小结 275
习题 276
附录 277
附录1 标准ASCII码字符集 277
附录2 80x86指令系统 279
附录3 调试器DEBUG 290
附录4 Windows 104键键盘扫描码 298
索引 300
参考文献 307
猜您喜欢