| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
第1章 基础知识 1
1.1 常用数制及其相互转换 1
1.2 存储器内的数字表示 3
1.2.1 存储器 3
1.2.2 存储顺序 6
1.3 数据表示 8
1.3.1 整数的表示 8
1.3.2 字符的表示 9
1.3.3 汉字的表示 9
1.3.4 Unicode标准 10
1.3.5 BCD码 11
习题1 11
第2章 Intel 80x86系列微处理器 13
2.1 Intel CPU的发展 13
2.1.1 4位CPU:4004 13
2.1.2 8位CPU:8008. 8080 13
2.1.3 16位CPU:8086. 8088. 80286 13
2.1.4 32位CPU:80386. 80486 14
2.1.5 准64位CPU:Pentium. PⅡ. PⅢ. P4 14
2.1.6 64位CPU:Itanium 16
2.2 PC机操作系统的发展 16
2.2.1 MS-DOS 16
2.2.2 桌面Windows系统 17
2.2.3 Windows NT系列 17
2.2.4 Linux 18
2.3 16位CPU及DOS基础 19
2.3.1 执行单元 19
2.3.2 总线接口单元 20
2.3.3 寄存器 20
2.3.4 存储器的分段 22
2.3.5 DOS的内存布局 23
2.3.6 I/O地址空间 25
2.4 32位CPU及Windows基础 25
2.4.1 三种工作模式 25
2.4.2 寄存器 27
2.4.3 Windows应用程序的内存布局 29
2.4.4 Windows的保护机制 32
习题2 34
第3章 Windows汇编程序基础 36
3.1 机器语言. 汇编语言和高级语言 36
3.1.1 机器语言 36
3.1.2 汇编语言 37
3.1.3 高级语言 38
3.1.4 三种语言的比较 38
3.2 汇编语言程序的上机过程 39
3.2.1 汇编程序的开发过程 40
3.2.2 MASM汇编器 41
3.2.3 LINK链接器 42
3.2.4 汇编链接步骤 42
3.3 汇编源程序的格式 43
3.3.1 一个显示字符串的汇编程序 43
3.3.2 程序格式 44
3.3.3 一个Windows界面的汇编程序 51
3.4 操作数的寻址方式 52
3.4.1 立即寻址 53
3.4.2 寄存器寻址 53
3.4.3 直接寻址 54
3.4.4 寄存器间接寻址 54
3.4.5 寄存器相对寻址 55
3.4.6 基址变址寻址 56
3.4.7 基址变址相对寻址 57
3.4.8 基址变址比例相对寻址 57
3.4.9 寻址方式总结 58
3.4.10 段超越 59
3.5 数据定义 60
3.5.1 常数的表示 60
3.5.2 简单数据类型 61
3.5.3 DUP伪操作 62
3.5.4 数据定义的例子程序 62
3.6 操作符 66
3.6.1 常用伪操作 66
3.6.2 算术操作符 71
3.6.3 逻辑操作符 72
3.6.4 关系操作符 72
3.7 寻址方式的应用 72
3.7.1 立即数 72
3.7.2 数组元素的访问 73
3.7.3 指针 74
习题3 76
第4章 数据操作 78
4.1 传送指令 78
4.1.1 通用数据传送指令 78
4.1.2 数据交换指令 81
4.1.3 取地址指令 82
4.2 算术运算 83
4.2.1 加法指令 83
4.2.2 减法指令 86
4.2.3 符号位扩展指令 89
4.2.4 乘法指令 91
4.2.5 除法指令 93
4.3 BCD码算术运算 95
4.3.1 压缩BCD码调整指令 95
4.3.2 非压缩BCD码调整指令 96
4.4 位运算指令 98
4.4.1 逻辑运算指令 98
4.4.2 位操作指令 102
4.4.3 移位指令 104
习题4 109
第5章 分支与循环程序设计 111
5.1 转移 111
5.1.1 无条件转移指令 111
5.1.2 条件转移指令 112
5.2 分支结构程序设计 114
5.2.1 单分支结构和双分支结构 115
5.2.2 多分支结构 116
5.2.3 折半查找程序 119
5.2.4 有序表插入 121
5.3 循环程序设计 123
5.3.1 循环指令 124
5.3.2 不定次数的循环 128
5.3.3 循环体中操作的控制 128
5.3.4 多重循环 130
5.4 跳转表 132
5.4.1 switch语句 132
5.4.2 跳转表 133
习题5 135
第6章 子程序设计 137
6.1 堆栈 137
6.1.1 堆栈空间 137
6.1.2 进栈和出栈指令 138
6.1.3 堆栈的用途 141
6.2 子程序 143
6.2.1 子程序的定义和调用 144
6.2.2 调用和返回指令 144
6.2.3 C语言函数的参数传递方式 147
6.2.4 汇编语言子程序的参数传递方式 153
6.2.5 带参数子程序的调用 154
6.2.6 子程序中的局部变量 157
6.2.7 子程序的嵌套 163
6.2.8 子程序的递归 163
6.3 Windows API 166
习题6 168
第7章 常用数据结构 171
7.1 数组与内存块 171
7.1.1 块操作 172
7.1.2 块传送指令 173
7.1.3 块存储指令 178
7.1.4 块装入指令 178
7.1.5 块比较指令 179
7.1.6 块扫描指令 181
7.2 字符串处理 182
7.2.1 常用字符串处理函数 183
7.2.2 常用内存块处理函数 185
7.3 结构 188
7.3.1 表示时间的结构 188
7.3.2 结构的声明和定义 190
7.3.3 结构数组 193
7.4 链表 198
7.4.1 动态分配和释放内存 198
7.4.2 链表中元素的插入与删除 199
7.4.3 链表的排序 204
7.4.4 双向链表 207
7.5 函数指针 207
7.5.1 指向子程序(函数)的指针 208
7.5.2 结构中的函数指针 210
7.6 程序执行环境 212
7.6.1 输入/输出重定向 212
7.6.2 命令行参数及程序返回值 213
习题7 214
第8章 汇编语言高级编程技术 216
8.1 宏 216
8.1.1 宏指令的定义和使用 216
8.1.2 宏指令中参数的使用 220
8.1.3 特殊的宏操作符 222
8.1.4 宏与子程序的区别 226
8.1.5 重复汇编 227
8.1.6 条件汇编 230
8.2 汇编高级语法 236
8.2.1 条件测试表达式 237
8.2.2 分支伪操作 239
8.2.3 循环伪操作 241
8.3 模块化程序设计 244
8.3.1 模块化程序设计基本概念 244
8.3.2 模块间的通信 245
8.4 C和汇编的混合编程 247
8.4.1 直接嵌入 247
8.4.2 C程序调用汇编子程序 249
8.4.3 汇编调用C函数 259
8.4.4 C 与汇编 261
8.5 程序优化 268
8.5.1 运行时间的优化 269
8.5.2 占用空间的优化 276
习题8 280
第9章 I/O程序设计 283
9.1 I/O操作 283
9.1.1 I/O端口及其分配 283
9.1.2 I/O指令 286
9.1.3 保护模式下I/O指令的限制 288
9.2 直接传送方式 289
9.2.1 CMOS数据的读取 289
9.2.2 扬声器发声程序 292
9.2.3 串行I/O 294
9.2.4 并行I/O 296
9.3 中断传送方式 298
9.3.1 基本原理 298
9.3.2 中断服务程序 300
9.4 DMA传送方式 302
9.4.1 DMA传送的过程 303
9.4.2 软盘控制器与DMA 304
9.5 文件I/O 304
9.5.1 文件 305
9.5.2 文件操作的基本函数 307
9.5.3 文件处理实例 310
习题9 316
第10章 保护模式及其编程 318
10.1 保护模式基础 318
10.1.1 32位CPU内部结构 318
10.1.2 三种运行模式 320
10.1.3 寄存器 321
10.1.4 显示CPU寄存器的值 327
10.2 虚拟内存管理 331
10.2.1 段式内存管理功能 331
10.2.2 页式内存管理功能 336
10.3 特权级保护 347
10.3.1 对数据访问的保护 348
10.3.2 对程序转移的保护 350
10.3.3 门 351
10.4 任务 354
10.4.1 任务状态段 354
10.4.2 任务切换 358
10.4.3 输入/输出保护 362
10.4.4 编写驱动程序修改I/O位图 364
10.5 中断和异常 369
10.5.1 中断和异常的类型 369
10.5.2 中断门和陷阱门 376
10.5.3 中断和异常的处理过程 378
10.5.4 通过任务门的转移 381
10.5.5 结构化异常处理 384
10.6 虚拟8086模式 389
10.6.1 虚拟8086任务 389
10.6.2 虚拟8086模式的进入和退出 391
10.7 操作系统类指令 394
10.7.1 在实模式和任何特权级下可执行的指令 395
10.7.2 仅在实模式及特权级0下可执行的指令 396
10.7.3 仅在保护模式下可执行的指令 397
习题10 401
附录A 使用VC编译调试汇编程序 403
附录B ASCII码表 410
附录C 汇编语言伪指令和操作符 412
参考文献 414