《汇编语言程序设计》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:何友鸣(等)主编
  • 出 版 社:武汉:武汉大学出版社
  • 出版年份:2006
  • ISBN:7307049414
  • 页数:223 页
图书介绍:本书介绍了汇编语言的基本概念、基本原理和程序设计的基本方法,并附有大量的例题和习题。

1.1 汇编语言的由来和特点 1

1.1.1 机器语言 1

第一章 基础知识 1

1.1.2 汇编语言 2

1.1.3 汇编程序和连接程序 2

1.1.4 汇编语言的主要特点 2

1.2 计算机中的数制 3

1.3.1 无符号数与带符号数 7

1.3.2 原码和补码 7

1.3 计算机中编码及逻辑运算 7

1.3.3 逻辑运算 9

1.3.4 BCD码 10

1.3.5 ASCII码 11

本章小结 12

习题一 12

第二章 NASM相关知识 13

2.1 汇编程序的开发过程 13

2.1.1 NASM汇编程序安装 13

2.1.2 NASM汇编器 13

2.1.4 一个显示字符串的汇编程序 14

2.1.3 程序格式 14

2.2 伪指令 15

2.2.1 ‘DB’一类的伪指令:声明已初始化的数据 15

2.2.2 ‘RESB’类的伪指令:声明未初始化的数据 15

2.2.3 ‘INCBIN’:包含其他二进制文件 16

2.2.4 ‘EQU’:定义常数 16

2.2.5 ‘TIMES’:重复指令或数据 16

2.3 有效地址 17

2.4 常量 17

2.4.1 数值常量 17

2.4.4 浮点常量 18

2.4.2 字符型常量 18

2.4.3 字符串常量 18

2.5 表达式 19

2.5.1 ‘|’:位或运算符 19

2.5.2 ‘^’:位异或运算符 19

2.5.3 ‘&’:位与运算符 19

2.5.4 ‘<<’and‘>>’:位移运算符 20

2.5.5 ‘+’and‘-’:加与减运算符 20

2.5.6 ‘*’,‘/’,‘∥’,‘%’和‘%%’:乘除法运算符 20

2.5.7 一元运算符:‘+’,‘-’,和‘SEG’ 20

2.6 临界表达式 20

2.7 局部标号 21

2.8.1 最常用的方式:‘%define’ 22

2.8.2 取消宏定义:‘%undef’ 22

2.8 预处理器 22

2.8.3 预处理器变量:‘%assign’ 23

2.8.4 多行宏:‘%macro’ 23

2.8.5 条件汇编 24

2.8.6 包含其他文件 24

2.8.7 汇编语言指引 24

本章小结 25

习题二 25

2.9 目标文件格式 25

第三章 数据操作 27

3.1 数据传送指令 27

3.1.1 通用数据传送指令 28

3.1.2 交换指令(Exchange Instruction) 29

3.1.3 堆栈操作指令(Stack Operation Instruction) 30

3.1.4 地址传送指令 31

3.1.5 I/O指令 32

3.1.6 标志传送指令 33

3.2 算术运算指令 34

3.2.1 加法指令 34

3.2.2 减法指令 35

3.2.3 乘法指令 36

3.2.4 除法指令 37

3.2.5 类型转换指令 38

3.3 BCD码运算调整指令 39

3.3.1 非压缩BCD码调整指令 39

3.3.2 压缩BCD码调整指令 41

3.4 逻辑运算指令 42

3.5 移位指令 44

3.5.1 算术移位指令 44

3.5.2 逻辑移位指令 44

3.5.3 双精度移位指令 45

3.5.4 循环移位指令 46

3.5.5 带进位的循环移位指令 46

3.6 位操作指令 47

3.6.1 位扫描指令 47

3.6.2 位测试和设置指令 48

3.7 标志控制指令 48

3.8 处理器指令 49

本章小结 49

习题三 49

4.1.2 CPU寻址外设的方式 52

4.1.1 CPU与外设的信息交换 52

4.1 工作原理 52

第四章 输入/输出程序设计 52

4.1.3 数据传送方式 53

4.2 数据的输入/输出方式 55

4.2.1 I/O指令 55

4.2.2 程序查询I/O方式 56

4.2.3 中断I/O方式 57

4.3 基本输入 62

4.3.1 从键盘输入一个字符 63

4.3.2 从键盘输入一个字符串 64

4.4 基本输出 65

4.4.1 将一个字符输出到屏幕 65

4.4.2 将一个字符串输出到屏幕 65

4.4.3 将一个字输出到屏幕 66

4.5 键盘输入控制 69

4.6 屏幕输出控制 72

4.7 打印机输出控制 81

本章小结 86

习题四 87

5.1 程序设计的基本步骤 89

第五章 程序设计的基本方法 89

5.2 顺序程序设计 90

5.2.1 算术运算指令 90

5.2.2 逻辑运算指令 99

5.2.3 处理机控制指令 107

5.2.4 顺序程序设计举例 109

5.3 分支程序设计 109

5.3.1 控制转移指令 109

5.3.2 分支程序的结构形式 114

5.3.3 分支程序设计方法 115

5.4.1 循环程序的结构 122

5.4 循环程序设计 122

5.4.2 循环控制方法 123

5.4.3 单重循环程序设计 125

5.4.4 多重循环程序设计 127

5.5 子程序设计 127

5.5.1 子程序的概念 128

5.5.2 子程序的一般设计方法 129

5.5.3 嵌套与递归子程序 139

本章小结 142

习题五 143

6.1 宏汇编 146

6.1.1 宏定义与宏调用 146

第六章 高级编程 146

6.1.2 几个主要的宏操作伪指令 147

6.2 重复汇编和条件汇编 148

6.2.1 重复汇编 148

6.2.2 条件汇编 149

6.3 汇编语言和高级语言的混合编程 151

6.3.1 C语言调用汇编语言子程序 151

6.3.2 汇编语言程序调用C语言函数 153

6.4 汇编语言在Visual C++中的应用 154

6.4.1 嵌入汇编语言指令 154

6.4.2 调用汇编语言过程 159

本章小结 164

习题六 164

第七章 文件处理 165

7.1 输入及输出概念 165

7.2 标准的文件代号 166

7.2.1 文件代号的建立 167

7.2.2 ASCIIZ串和文件属性设置 168

7.2.3 建立新文件 169

7.2.4 文件的打开和关闭 170

7.3 文件的读写操作 173

7.3.1 从文件或设备读取数据 174

7.3.2 数据写入文件或设备 177

7.3.3 移动文件指针 180

7.4 文件其他操作 187

7.4.1 检查并修改文件属性 187

7.4.2 删除一个文件 190

7.4.3 文件改名 191

7.5 目录操作 193

7.5.1 建立子目录 193

7.5.2 删除子目录 194

7.5.3 改变当前目录 194

7.6.1 取得缺省的磁盘驱动器 196

7.6 磁盘基本操作 196

7.5.4 取得当前目录 196

7.6.2 改变缺省的磁盘驱动器 197

7.7 面向I/O设备的文件操作 199

7.8 低级输入及输出 202

7.8.1 基本BIOS INT 13H 203

7.8.2 扩展INT 13H 207

本章小结 212

习题七 212

附录1 ASCII码表 214

附录2 操作步骤和指令系统 215

参考文献 223