第1章 计算机中的信息表示及运算 1
1.1 计算机基本概念 1
1.2 计算机中数据的表示及其转换 2
1.2.1 计算机中信息的表示 3
1.2.2 数制表示 3
1.2.3 数制的转换 4
1.3 数值型数据的表示方法 5
1.3.1 机器数的概念及其特点 5
1.3.2 数值型数据的表示形式 5
1.3.3 有符号数的表示法 7
1.4 数的运算 9
1.4.1 二进制数的逻辑运算 9
1.4.2 算术运算 10
1.4.3 带符号二进制数的表示与运算 10
1.4.4 补码运算 11
1.4.5 带符号数的运算 11
1.5 文字信息的编码及表示 13
1.5.1 数字的编码 13
1.5.2 字符及字符串的表示方法 14
1.5.3 汉字信息的编码及表示 14
习题1 15
第2章 微型计算机 16
2.1 微型计算机的基本组成及应用 16
2.1.1 微型计算机系统 16
2.1.2 微型计算机的工作原理 18
2.2 微处理器概述 20
2.2.1 微处理器(CPU)的组成 20
2.2.2 微处理器的功能 20
2.3 8088/8086微处理器 21
2.3.1 8088/8086 CPU的内部结构(编程结构) 21
2.3.2 80X86寄存器组织 27
2.3.3 浮点及多媒体寄存器 27
2.4 微处理器的存储器组织 29
2.4.1 IA-32工作方式 29
2.4.2 实方式的逻辑段 30
2.5 内存储器 31
2.5.1 物理地址与逻辑地址 31
2.5.2 存储单元 32
2.5.3 存储器分段 33
习题2 35
第3章 汇编语言基础 37
3.1 汇编语言的基本概念 37
3.1.1 汇编语言的语句类型 37
3.1.2 常量、变量、标号、运算符和表达式 38
3.1.3 汇编语言和汇编处理过程 40
3.2 80x86指令特点 41
3.2.1 指令格式 42
3.2.2 操作数的分类 42
3.3 80x86的寻址方式 43
3.3.1 立即寻址 43
3.3.2 寄存器寻址 43
3.3.3 存储器寻址 44
3.3.4 I/O端口寻址 48
3.4 8086指令系统 48
3.4.1 数据传送类 48
3.4.2 算术运算类 53
3.4.3 逻辑操作类 59
3.4.4 字符串操作类 63
3.4.5 控制转移类 67
3.4.6 处理器控制类 74
3.5 80x86指令系统 75
3.5.1 80x86寻址方式 75
3.5.2 80286扩充和增加的指令 76
3.5.3 80386、80486扩充和增加的指令 79
3.5.4 Pentium系列处理器增加的指令 83
习题3 83
第4章 汇编语言程序设计基础 87
4.1 8086汇编语言的语句 87
4.1.1 指令性语句格式 88
4.1.2 指示性语句格式 88
4.1.3 有关属性 88
4.2 8086汇编语言中的伪指令 89
4.2.1 符号定义语句 89
4.2.2 变量定义语句 89
4.2.3 段定义语句 91
4.2.4 过程定义语句 93
4.2.5 结束语句 93
4.3 8086汇编语言中的运算符 94
4.3.1 常用运算符和操作符 94
4.3.2 运算符的优先级别 96
习题4 96
第5章 汇编语言程序设计 98
5.1 汇编语言程序设计步骤 98
5.1.1 汇编语言程序设计基本步骤 98
5.1.2 汇编语言程序的基本结构 99
5.2 顺序程序设计 104
5.3 分支程序设计 105
5.3.1 双分支程序设计 105
5.3.2 多分支程序设计 107
5.4 循环结构程序设计 112
5.4.1 循环程序设计方法 112
5.4.2 多重循环程序设计方法 114
5.5 汇编语言程序设计与上机调试 115
5.5.1 汇编语言程序设计实例 115
5.5.2 DOS功能调用与子程序设计 123
5.5.3 汇编语言程序上机调试 127
习题5 128
第6章 微型计算机存储器系统 130
6.1 存储系统组成 130
6.1.1 存储器层次结构 130
6.1.2 高速缓存 132
6.1.3 技术指标 134
6.2 半导体存储器 134
6.2.1 随机存取存储器RAM 135
6.2.2 只读存储器 140
6.3 主存储器地址译码 142
6.4 个人微机主存空间分配 147
6.5 现代内存芯片技术 150
习题6 151
第7章 汇编语言程序设计技巧 153
7.1 汇编程序的高级语言特性 153
7.1.1 条件控制伪指令 153
7.1.2 循环控制伪指令 156
7.1.3 条件控制型循环程序设计 157
7.2 子程序与扩展子程序 159
7.2.1 一般过程定义(子程序)伪指令 159
7.2.2 子程序参数传递方法 161
7.2.3 扩展过程定义(扩展子程序)伪指令 169
7.3 输入输出程序 173
7.3.1 输入输出原理 173
7.3.2 I/O程序设计方法 174
7.4 宏定义与宏调用 178
7.4.1 宏定义 179
7.4.2 宏调用 179
7.5 重复汇编与条件汇编 180
7.5.1 重复汇编 180
7.5.2 条件汇编 182
7.6 模块化程序设计 185
7.6.1 模块化的特点 185
7.6.2 源程序文件包含 186
7.6.3 目标代码文件包含 188
7.6.4 子程序库 195
习题7 197
第8章 中断程序设计 198
8.1 中断的概念 198
8.1.1 内部中断 199
8.1.2 硬件中断 199
8.1.3 中断类型与中断向量 201
8.1.4 中断过程 203
8.2 定制自己的中断 205
8.2.1 软件中断子程序的编写 205
8.2.2 中断的设置 206
8.2.3 软件中断的触发与处理 207
8.3 BIOS中断 211
8.3.1 屏幕及光标控制INT 10H 211
8.3.2 键盘中断INT 16H 217
8.3.3 时钟中断INTI AH 219
8.4 DOS中断 220
8.4.1 DOS显示功能调用 220
8.4.2 DOS键盘功能调用 220
8.4.3 DOS日期、时间功能调用 221
8.5 中断程序应用 221
8.5.1 时间与计数 221
8.5.2 改写INT 1CH中断 226
习题8 228
附录 229
附录A 8086指令系统表 229
附录B DOS功能调用 235
附录C 汇编错误信息中英文对照表 243
附录D 实验项目 246
实验一 汇编语言上机实验 246
实验二 分支、循环程序设计实验 247
实验三 DOS功能调用实验 248
实验四 数值计算程序设计实验 250
实验五 子程序结构设计实验 250
实验六 学生成绩统计报表 251
实验七 时钟中断和DOS中断的用法 252
参考文献 253