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

  • 购买积分:16 如何计算积分?
  • 作  者:齐志儒,高福祥主编
  • 出 版 社:沈阳:东北大学出版社
  • 出版年份:1994
  • ISBN:7810068458
  • 页数:506 页
图书介绍:

目录 1

第一章 概述 1

1.1 微型计算机的发展过程 1

1.2 微型计算机的特点 2

1.3 计算机系统 3

1.3.1 硬件子系统 3

1.3.2 软件子系统 5

1.4 计算机语言 6

1.4.1 机器语言 7

1.4.2 汇编语言 7

1.4.3 通用语言(高级语言) 9

习题 10

第二章 计算机运算基础 11

2.1 进位计数制 11

2.2 数制之间的转换 12

2.3 二进制编码 16

2.3.1 二进制编码的十进制数 16

2.3.2 字符的编码 17

2.4 带符号数的机内表示 18

2.5 二进制运算 21

2.5.1 补码的加减法运算 21

习题 23

2.5.2 逻辑运算 23

第三章 微型处理机的结构 25

3.1 微型处理机的结构 25

3.1.1 8086/8088微型处理机的结构 25

3.1.2 8086/8088寄存器和标志 26

3.2 存储器 29

3.2.1 存储器的分段结构 29

3.2.2 实际地址的产生 30

3.3 寻址方式 31

3.3.1 操作数的种类 32

3.3.2 寻址方式 32

3.3.3 段更换和段跨越 34

3.3.4 有效地址的计算时间 35

3.4 8086/8088指令系统 35

*3.5 86系列微处理器之间的差异 36

习题 38

第四章 汇编语言 39

4.1 汇编语言的语句格式 39

4.1.1 字符集 39

4.1.2 汇编语句格式 39

4.2 汇编语言中数据的表示方法 42

4.2.1 数据在机内的表示方法和范围 42

4.2.2 汇编语言中数据书写形式 44

4.3 运算符号 45

4.3.1 算术运算符 45

4.3.2 逻辑运算符 45

4.3.3 关系运算符 45

4.3.4 分析算符 45

4.3.5 组合算符 47

4.3.6 字节分离算符LOW和HIGH 47

4.3.7 记录专用算符 48

4.4 伪指令(汇编命令) 48

4.4.1 符号定义伪指令 48

4.4.2 数据定义伪指令 49

4.4.3 段定义伪指令 52

4.4.4 其它伪指令 54

4.5 汇编语言的上机过程 56

习题 60

第五章 顺序结构程序设计 61

5.1 程序设计的步骤 61

5.2 流程图的应用 63

5.3 程序的基本控制结构 63

5.4 数据传送指令 65

5.5 算术运算指令 68

5.5.2 减法运算指令 69

5.5.1 加法运算指令 69

5.5.3 乘法运算指令 71

5.5.4 除法运算指令 72

5.6 逻辑操作指令 73

5.7 移位操作指令 75

5.8 状态标志位操作指令 75

5.9 简单的I/O功能调用 76

5.10 顺序结构程序举例 77

习题 84

第六章 分支结构程序设计 87

6.1 分支结构程序的引出 87

6.2.1 无条件转移指令JMP(Jump) 88

6.2 转移指令 88

6.2.2 条件转移指令 89

6.3 分支结构程序设计 90

6.4 多分支结构程序设计 95

习题 98

第七章 循环结构程序 101

7.1 循环结构程序的提出 101

7.2 循环结构程序的组成 103

7.3 循环控制指令 104

7.4.1 数据串基本操作指令 106

7.4 数据串操作指令 106

7.4.2 重复前缀 109

7.5 循环程序的控制方法 110

7.5.1 计数法 110

7.5.2 寄存器终值控制法 111

7.5.3 条件控制法 112

7.6 单重循环程序举例 114

7.7 多重循环程序设计 117

7.8 循环程序的效率 119

习题 121

8.1 子程序的引出 125

第八章 子程序设计 125

8.2 子程序(过程)定义伪指令 126

8.3 调用和返回指令 127

8.4 子程序设计方法 130

8.4.1 现场的保护和恢复 130

8.4.2 子程序说明文件 130

8.4.3 主程序与子程序之间的参数传递 131

8.5 子程序嵌套 138

8.6 递归子程序 141

8.8 程序的连接 144

8.8.1 程序连接伪指令 144

*8.7 可重入子程序 144

8.8.2 模块连接方法 146

习题 148

第九章 条件汇编与宏指令 152

9.1 条件汇编伪操作 152

9.2 宏伪操作 154

9.2.1 宏定义与宏结束伪操作命令 154

9.2.2 参数的使用 156

9.2.3 宏中的标号处理 158

9.2.4 宏嵌套 159

9.2.5 宏与子程序的区别 162

*9.3 重复块宏操作命令 163

*9.4 特殊宏操作命令 165

习题 167

第十章 算术运算与代码转换 168

10.1 多字节加减运算 168

10.2 多字节整数乘除运算 169

10.2.1 一般整数乘法运算 169

10.2.2 多字节整数乘法运算 170

10.2.3 一般整数除法运算 172

10.2.4 多字节整数除法运算 173

10.3.2 BCD码运算调整指令 178

10.3.1 BCD码运算规则 178

10.3 BCD码运算 178

10.3.3 非组合的BCD码运算 179

10.3.4 组合的BCD码加减运算 181

10.3.5 BCD码数据的符号表示方法及运算方法 182

10.4 浮点数据的表示方法 182

*10.5 浮点数加减运算 184

10.5.1 浮点数加法 184

10.5.2 浮点数减法 187

10.6.1 浮点数乘法 188

10.6.2 浮点数除法 188

*10.6 浮点数乘除运算 188

10.7 十进制数的ASCII码串转换为二进制定点数 189

10.8 二进制定点数转换为十进制数的ASCII码串 191

*10.9 实数的ASCII码串转换为浮点数 194

*10.10 浮点数据转换为十进制数的ASCII码串 194

10.10.1 浮点数转换为普通十进制数的ASCII码串 195

10.10.2 浮点数转换为科学表示法数的ASCII码串 195

习题 196

第十一章 列表与字符串操作 198

11.1 列表处理 198

11.1.1 列表的定义 198

11.2 记录与结构 199

11.1.2 列表的存储结构 199

11.2.1 记录 200

11.2.2 结构 203

11.3 列表的种类及其运算 205

11.3.1 插入 206

11.3.2 删除 207

11.3.3 排序 209

11.3.4 检索 214

*11.4 字符串处理 217

11.4.1 字符串的定义及表示方法 217

11.4.2 字符串的运算 218

习题 220

第十二章 输入输出与中断 223

12.1 输入输出指令 223

12.2 中断指令 224

12.3 外同步指令和空操作指令 225

12.4 CPU与外设间的数据传送 226

12.4.1 输入输出接口 226

12.4.2 CPU与外设之间的接口信号 227

12.4.3 CPU与外设之间的数据传送方式 228

12.5.2 中断系统的功能 229

12.5 中断系统概述 229

12.5.1 中断请求与中断源 229

12.5.3 中断响应 230

12.6 8086/8088的中断系统 231

12.6.1 外部中断 231

12.6.2 内部中断 233

12.6.3 中断向量表 234

12.7 8259A中断控制器及其程序设计 234

12.7.1 8259A的结构 235

12.7.2 8259A的程序设计 236

12.7.3 8259A在IBM PC系列机中的应用 239

12.8 中断程序设计方法 241

12.8.1 主程序设计 241

12.8.2 中断服务程序设计 241

12.8.3 中断服务程序设计中应注意的几个问题 242

12.9 IBM PC的BIOS调用及DOS功能调用 242

12.9.1 BIOS调用 243

12.9.2 DOS中断和功能调用 244

习题 248

*第十三章 磁盘操作及文件管理 250

13.1 磁盘结构 250

13.2.1 保留区(引导记录) 252

13.2 磁盘上的数据组织 252

13.2.2 文件分配表(FAT) 253

13.2.3 文件目录表(FDT) 255

13.3 磁盘I/O参数表及其用法 256

13.3.1 磁盘I/O参数表(BPB) 256

13.3.2 BPB表的用法 257

13.4 磁盘基数表及其用法 259

13.4.1 磁盘基数表 259

13.4.2 软盘基数表的用法 259

13.4.3 磁盘加密 266

13.5.1 计算机病毒的技术特征 267

13.5 计算机病毒的诊治 267

13.5.2 病毒的诊断 269

13.5.3 消毒免疫技巧 270

13.6 DOS文件管理 270

13.6.1 DOS文件结构 270

13.6.2 文件控制块FCB及其用法 271

13.6.3 DOS文件句柄功能及其用法 273

习题 276

第十四章 显示程序设计 278

14.1 显示器种类及性能 278

14.2 用BIOS调用编制显示程序 279

14.3.1 CGA显示器的性能 282

14.3 CGA显示程序设计 282

14.3.2 CGA适配器 283

14.3.3 CGA显示器编程 288

*14.4 EGA/VGA显示程序设计 294

14.4.1 EGA/VGA程序设计模型 295

14.4.2 显示存储器 296

14.4.3 图形控制器 299

14.4.4 属性控制器 301

14.4.5 定序器 304

14.4.6 CRT控制器 305

14.4.7 外部寄存器 307

14.4.8 EGA/VGA显示器编程 308

习题 313

第十五章 键盘程序设计 315

15.1 键盘的种类与扫描码 315

15.2 IBM PC/XT标准键盘接口 316

15.3 键盘中断程序设计 317

*15.4 扩展键盘接口 319

15.4.1 扩展键盘接口程序设计模型 319

15.4.2 扩展键盘接口程序设计 321

*15.5 键盘程序设计 322

习题 325

16.2 打印机适配器 326

第十六章 打印程序设计 326

16.1 打印机的种类 326

16.3 字符打印程序设计 328

16.3.1 查询方式打印字符程序 328

16.3.2 中断方式打印程序设计 329

16.3.3 BIOS打印功能调用 331

*16.4 打印机控制代码 332

*16.5 图形打印程序设计 334

16.5.1 点阵式打印机打印头的结构及工作原理 334

16.5.2 打印图形程序设计 335

习题 337

第十七章 定时及音响程序设计 339

17.1 概述 339

17.2 8253/8254可编程定时/计数器 340

17.2.1 8253/8254的基本功能和内部结构 340

17.2.2 8253的工作方式 341

17.2.3 8253/8254在IBM PC系列机中的应用 342

17.3 时钟程序设计 343

17.3.1 使用8253/8254时钟 343

17.3.2 实时时钟的使用 346

17.4.2 音响程序的设计 348

*17.4 音响程序设计 348

17.4.1 扬声器与系统的连结 348

习题 353

*第十八章 通信程序设计 355

18.1 异步串行通信简介 355

18.1.1 串行传输及其优缺点 355

18.1.2 异步传输格式 355

18.2 异步串行通信适配器 356

18.3 8250的程序设计 356

18.4 通信程序设计 360

18.4.1 查询方式通信程序设计 360

18.4.2 中断方式通信程序设计 366

习题 373

第十九章 80286系统 374

19.1 80286 CPU结构 374

19.1.1 80286 CPU的内部结构 374

19.1.2 80286 CPU内部寄存器 375

19.2 80286系统存储器管理 377

19.2.1 80286的操作方式 377

19.2.2 有关特权的概念 377

19.2.3 保护虚地址方式的存储管理 378

19.3 特权级 380

19.4 80286的中断系统 382

19.5 80286增强与扩充的指令 383

19.5.1 增强的指令 383

19.5.2 扩充的指令 383

习题 386

*第二十章 80386/80486/Pentium系统 387

20.1 80386系统 387

20.1.1 80386 CPU的内部结构 387

20.1.2 80386寄存器 388

20.1.3 80386存储器管理 391

20.1.4 80386的中断和异常 393

20.1.5 80386的寻址方式 396

20.1.6 80386扩充的指令 397

20.2 80486系统 400

20.2.1 80486 CPU结构 400

20.2.2 80486的内存管理 401

20.2.3 80486的片内高速缓存 401

20.2.4 80486扩充的指令 401

20.3 Pentium系统 402

20.3.1 Pentium CPU结构 403

20.3.2 Pentium扩充的指令 404

习题 408

21.1 概述 409

*第二十一章 8087/80287/80387程序设计 409

21.2 8087/80287/80387的逻辑结构与运行 410

21.2.1 8087/80287/80387的逻辑结构 410

21.2.2 8087/80287/80387的运行 413

21.3 数据类型及格式 415

21.4 8087/80287/80387的指令系统 417

21.4.1 数据传送指令 417

21.4.2 算术运算指令 418

21.4.3 比较指令 421

21.4.4 函数指令 422

21.4.5 常数指令 424

21.4.6 处理器控制指令 425

21.5 8087/80287/80387程序设计举例 427

21.5.1 整数运算 427

21.5.2 实数运算 433

习题 436

第二十二章 MMX的程序设计 438

22.1 MMX简介 438

22.2 MM寄存器 439

22.3 检测MMX技术的存在 439

22.4 EMMS指令 440

22.5 异常 441

22.6.1 指令的句法 442

22.6 MMX指令 442

22.6.2 指令格式 443

22.6.3 表示法规则 443

22.6.4 MMX指令 443

22.7 MMX应用举例 468

22.7.1 Chroma Keying 468

22.7.2 矢量点乘积 468

22.7.3 矩阵乘积 469

22.7.4 使用alpha混合的图像分解 470

22.8.1 MMX的程序设计步骤 471

22.8 MMX的程序设计 471

22.8.2 程序设计举例 472

习题 477

附录 478

附录A 8086/8088指令系统 478

附录B 伪指令 486

附录C BIOS调用说明 487

附录D DOS功能调用说明 498

附录E IBM PC的键盘输入码和CRT显示码 504

参考文献 506