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

  • 购买积分:13 如何计算积分?
  • 作  者:廖建明编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302200772
  • 页数:364 页
图书介绍:本书以80X86系列微型计算机为硬件基础,系统地介绍汇编语言程序设计的基本知识、基本原理、程序设计技术,以及汇编语言程序的开发过程。

第1章 基础知识 1

1.1 汇编语言程序的一般概念 1

1.1.1 机器语言 1

1.1.2 高级语言 2

1.1.3 汇编语言 3

1.2 进位计数制及其相互转换 3

1.2.1 进位计数制 3

1.2.2 各种数制间的相互转换 4

1.3 计算机中数和字符的表示 9

1.3.1 带符号数的表示 9

1.3.2 字符的表示 13

1.4 基本逻辑运算 14

习题1 15

第2章 IBM PC微型计算机基本构成 17

2.1 IBM PC微型计算机的基本结构 17

2.1.1 微型计算机系统的组成 17

2.1.2 Intel 8086/8088微处理器的功能结构 20

2.2 Intel 8086/8088 CPU的寄存器组 23

2.2.1 通用寄存器 23

2.2.2 段寄存器 25

2.2.3 控制寄存器 26

2.3 存储器 30

2.3.1 IBM PC存储器的组织 30

2.3.2 存储器的段结构 31

2.3.3 逻辑地址与物理地址 33

2.4 堆栈 36

2.4.1 堆栈的概念 36

2.4.2 堆栈的组织 37

2.4.3 堆栈的操作 38

习题2 40

第3章 Intel 8086/8088的寻址方式与指令系统 42

3.1 寻址方式 42

3.1.1 寄存器寻址 43

3.1.2 立即数寻址 43

3.1.3 存储器寻址 44

3.2 指令系统 54

3.2.1 传送类指令 54

3.2.2 算术运算类指令 65

3.2.3 位操作类指令 71

3.2.4 处理器控制类指令 80

3.3 指令编码 81

3.3.1 双操作数指令编码格式 82

3.3.2 单操作数指令编码格式 87

3.3.3 与AX或AL有关的指令编码格式 88

3.3.4 其他指令编码格式 89

习题3 90

第4章 基本汇编语言 94

4.1 汇编语言语句种类及其格式 94

4.1.1 指令语句 94

4.1.2 伪指令语句 95

4.1.3 标识符 96

4.2 汇编语言数据 96

4.2.1 常量 96

4.2.2 变量 97

4.2.3 标号 104

4.3 表达式与运算符 105

4.3.1 算术运算符 105

4.3.2 移位运算符 106

4.3.3 逻辑运算符 107

4.3.4 关系运算符 108

4.3.5 数值返回运算符 108

4.3.6 属性修改运算符 112

4.3.7 运算符的优先级 113

4.4 常用的伪指令 114

4.4.1 符号定义伪指令 114

4.4.2 数据定义伪指令 116

4.4.3 LABEL属性定义伪指令 118

4.4.4 SEGMENT/ENDS段定义伪指令 119

4.4.5 ASSUME段寻址伪指令 122

4.4.6 PROC/ENDP过程定义伪指令 124

4.4.7 ORG定位伪指令和$当前位置计数器 125

4.4.8 TITLE标题伪指令 126

4.4.9 END程序结束伪指令 126

4.4.10 PUBLIC和EXTRN模块连接伪指令 126

4.5 汇编源程序的结构 128

4.5.1 程序的段结构 128

4.5.2 段寄存器的装入 130

4.6 程序返回操作系统 133

4.6.1 用4CH系统功能调用实现返回 133

4.6.2 用程序段前缀实现返回 134

习题4 135

第5章 顺序、分支与循环程序设计 140

5.1 概述 140

5.2 顺序程序设计 143

5.3 分支程序设计 145

5.3.1 无条件转移指令 147

5.3.2 条件转移指令 150

5.3.3 分支程序设计 154

5.4 循环程序设计 163

5.4.1 循环控制指令 163

5.4.2 循环程序结构 164

5.4.3 单重循环程序设计 166

5.4.4 多重循环程序设计 171

习题5 175

第6章 子程序设计 180

6.1 子程序的调用与返回 181

6.1.1 子程序的定义 181

6.1.2 调用指令 181

6.1.3 返回指令 183

6.2 子程序设计的基本要求 184

6.3 子程序与主程序间的参数传递 186

6.3.1 用寄存器传递参数 186

6.3.2 用堆栈传递参数 188

6.3.3 用地址表传递参数 190

6.4 子程序的嵌套与递归调用 192

6.4.1 子程序的嵌套调用 192

6.4.2 子程序的递归调用 192

习题6 194

第7章 汇编语言简单应用程序设计 198

7.1 算术运算调整指令及其应用 198

7.1.1 BCD码校正及其加减法BCD码校正指令 198

7.1.2 乘除法运算及其BCD码校正指令 204

7.1.3 开方运算 212

7.2 串和表的处理 216

7.2.1 串操作指令 216

7.2.2 表的处理 221

7.3 代码转换及其应用 225

7.3.1 十六进制ASCII码与二进制数之间的转换 225

7.3.2 二进制数与十进制数之间转换 229

习题7 230

第8章 高级宏汇编语言 231

8.1 结构 231

8.1.1 结构的定义 232

8.1.2 结构的预置与存储分配 232

8.1.3 对结构变量及其字段的操作 234

8.1.4 程序举例 235

8.2 记录 237

8.2.1 记录的定义 237

8.2.2 记录的预置与存储分配 238

8.2.3 记录运算符 239

8.2.4 对记录及其字段的操作 240

8.3 宏指令 241

8.3.1 宏指令的使用过程 241

8.3.2 宏操作符 244

8.3.3 局部符号伪指令 246

8.3.4 宏库 247

8.4 重复汇编 249

8.4.1 定重复伪指令 249

8.4.2 不定重复伪指令 250

8.5 条件汇编 251

习题8 255

第9章 输入输出和中断 259

9.1 输入输出指令 259

9.1.1 I/O端口 259

9.1.2 I/O端口寻址 260

9.1.3 I/O指令 261

9.2 输入输出控制方式 263

9.2.1 程序控制方式 263

9.2.2 中断控制方式 267

9.2.3 直接存储器存取方式 267

9.3 中断 269

9.3.1 中断源及中断类型码 270

9.3.2 中断矢量表 271

9.3.3 中断优先级 272

9.3.4 中断过程 272

9.3.5 如何编写中断处理程序 275

9.4 BIOS和DOS中断调用 277

9.4.1 键盘BIOS功能调用 279

9.4.2 键盘DOS功能调用 281

9.4.3 打印机BIOS功能调用17H 282

9.4.4 时钟BIOS和DOS功能调用 283

9.4.5 显示器BIOS功能调用 284

9.4.6 显示器DOS功能调用 286

9.5 程序举例 286

习题9 290

第10章 32位微处理器指令及编程基础 291

10.1 80x86系列微处理器结构 291

10.1.1 80386微处理器的特点 291

10.1.2 80386微处理器的内部结构 292

10.1.3 80386微处理器的寄存器 293

10.1.4 80486微处理器 295

10.1.5 Pentium微处理器 296

10.2 80x86系列微处理器指令的特点 296

10.2.1 微处理器的工作模式 296

10.2.2 寻址方式 298

10.3 80x86系列微处理器的指令 298

10.3.1 数据传送指令 298

10.3.2 算术运算指令 299

10.3.3 逻辑运算与移位指令 300

10.3.4 堆栈操作指令 300

10.3.5 串操作指令 301

10.3.6 控制转移指令 301

10.3.7 位操作指令 302

10.3.8 I/O指令 302

10.3.9 特权指令 303

10.4 程序设计举例 303

习题10 305

第11章 汇编语言程序的开发 306

11.1 汇编语言程序的开发过程 306

11.2 编辑 307

11.3 汇编器的使用 308

11.4 连接器的使用 311

11.5 调试与运行 313

11.5.1 调试程序DEBUG的主要特点 313

11.5.2 DEBUG程序的启动与退出 314

11.5.3 显示命令 315

11.5.4 修改命令 316

11.5.5 程序运行 318

11.5.6 其他常用DEBUG命令 318

11.5.7 调试程序的基本步骤 320

附录A ASCII码字符表 323

附录B 80x86系列微处理器指令系统汇总表 324

附录C DOS系统功能调用(INT 21H) 353

附录D BIOS中断调用 359

参考文献 364