图书介绍

80X86汇编语言程序设计教程PDF|Epub|txt|kindle电子书版本网盘下载

80X86汇编语言程序设计教程
  • 杨季文等编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302029016
  • 出版时间:1998
  • 标注页数:595页
  • 文件大小:21MB
  • 文件页数:608页
  • 主题词:汇编语言程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

80X86汇编语言程序设计教程PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 基础部分1

第1章 绪论1

1.1 汇编语言概述1

1.1.1 汇编语言1

1.1.2 汇编语言的特点2

1.1.3 恰当地使用汇编语言3

1.2 数据的表示和类型4

1.2.1 数值数据的表示4

1.2.2 非数值数据的表示6

1.2.3 基本数据类型7

1.3 Intel系列CPU简介8

1.3.1 8位微处理器8

1.3.2 16位微处理器9

1.3.3 32位微处理器11

1.3.4 Pentium和Pentium Pro13

1.4 习题14

2.1.1 8086/8088CPU寄存器组15

2.1 8086/8088寄存器组15

第2章 8086/8088寻址方式和指令系统15

2.1.2 标志寄存器17

2.2 存储器分段和地址的形成19

2.2.1 存储单元的地址和内容19

2.2.2 存储器的分段20

2.2.3 物理地址的形成20

2.2.4 段寄存器的引用21

2.3 8086/8088的寻址方式22

2.3.3 直接寻址方式23

2.3.1 立即寻址方式23

2.3.2 寄存器寻址方式23

2.3.4 寄存器间接寻址方式24

2.3.5 寄存器相对寻址方式25

2.3.6 基址加变址寻址方式26

2.3.7 相对基址加变址寻址方式27

2.4 8086/8088指令系统28

2.4.1 指令集说明28

2.4.2 数据传送指令29

2.4.3 堆栈操作指令32

2.4.4 标志操作指令34

2.4.5 加减运算指令36

2.4.6 乘除运算指令41

2.4.7 逻辑运算和移位指令44

2.4.8 转移指令51

2.5 习题58

3.1.1 语句的种类和格式63

3.1 汇编语言的语句63

第3章 汇编语言及其程序设计初步63

3.1.2 数值表达式64

3.1.3 地址表达式67

3.2 变量和标号67

3.2.1 数据定义语句67

3.2.2 变量和标号70

3.3 常用伪指令语句和源程序组织73

3.3.1 符号定义语句74

3.3.2 段定义语句75

3.3.3 汇编语言源程序的组织79

3.4 顺序程序设计81

3.4.1 顺序程序举例81

3.4.2 简单查表法代码转换83

3.4.3 查表法求函数值85

3.5 分支程序设计86

3.5.1 分支程序举例86

3.5.2 利用地址表实现多向分支91

3.6.1 循环程序举例94

3.6 循环程序设计94

3.6.2 多重循环程序举例103

3.7 习题106

第4章 子程序设计和DOS功能调用110

4.1 子程序设计110

4.1.1 过程调用和返回指令110

4.1.2 过程定义语句115

4.1.3 子程序举例116

4.1.4 子程序说明信息118

4.1.5 寄存器的保护与恢复119

4.2 主程序与子程序间的参数传递121

4.2.1 利用寄存器传递参数121

4.2.2 利用约定存储单元传递参数123

4.2.3 利用堆栈传递参数125

4.2.4 利用CALL后续区传递参数127

4.3 DOS功能调用及应用129

4.3.1 DOS功能调用概述129

4.3.2 基本I/O功能调用130

4.3.3 应用举例132

4.4 磁盘文件管理及应用141

4.4.1 DOS磁盘文件管理功能调用141

4.4.2 应用举例143

4.5 子程序的递归和重入150

4.5.1 递归子程序150

4.5.2 可重入子程序151

4.6 习题152

5.1.1 I/O端口地址和I/O指令155

5.1 输入和输出的基本概念155

第5章 输入输出与中断155

5.1.2 数据传送方式156

5.1.3 存取RT/CMOS RAM157

5.2 查询方式传送数据160

5.2.1 查询传送方式160

5.2.2 读实时钟161

5.2.3 查询方式打印输出162

5.3.1 中断和中断传送方式164

5.3 中断164

5.3.2 中断向量表165

5.3.3 中断响应过程168

5.3.4 外部中断168

5.3.5 内部中断170

5.3.6 中断优先级和中断嵌套172

5.3.7 中断处理程序的设计173

5.4 基本输入输出系统BIOS174

5.4.1 基本输入输出系统BIOS概述174

5.4.2 键盘输入175

5.4.3 显示输出178

5.4.4 打印输出188

5.5 软中断处理程序举例191

5.5.1 打印I/O程序191

5.5.2 时钟显示程序194

5.6 习题197

6.1 字符串处理200

6.1.1 字符串操作指令200

第6章 简单应用程序的设计200

6.1.2 重复前缀205

6.1.3 字符串操作举例208

6.2 十进制数算术运算调整指令及应用215

6.2.1 给合BCD码的算术运算调整指令215

6.2.2 未组合BCD码的算术运算调整指令216

6.2.3 应用举例218

6.3 DOS程序段前缀和特殊情况处理程序224

6.3.1 DOS程序段前缀PSP224

6.3.2 对Ctrl+C键和Ctrl+Break键的处理228

6.4 TSR程序设计举例234

6.4.1 驻留的时钟显示程序234

6.4.2 热键激活的TSR程序236

6.5 习题238

第7章 高级汇编语言技术241

7.1 结构和记录241

7.1.1 结构241

7.1.2 记录246

7.2 宏249

7.2.1 宏指令的定义和使用250

7.2.2 宏指令的用途251

7.2.3 宏指令中参数的使用253

7.2.4 特殊的宏运算符254

7.2.5 宏与子程序的区别256

7.2.6 与宏有关的伪指令256

7.2.7 宏定义的嵌套258

7.3 重复汇编260

7.3.1 伪指令REPT260

7.3.2 伪指令IRP261

7.3.3 伪指令IRPC262

7.4 条件汇编262

7.4.1 条件汇编伪指令263

7.4.2 条件汇编与宏结合265

7.5 源程序的结合268

7.5.1 源程序的结合268

7.5.2 宏库的使用271

7.6 习题273

第8章 模块化程序设计技术275

8.1 段的完整定义275

8.1.1 完整的段定义275

8.1.2 关于堆栈段的说明280

8.1.3 段组的说明和使用281

8.2 段的简化定义285

8.2.1 存储模型说明伪指令285

8.2.2 简化的段定义伪指令285

8.2.3 存储模型说明伪指令的隐含动作288

8.3.1 伪指令PUBLIC和伪指令EXTRN289

8.3 模块间的通信289

8.3.2 模块间的转移291

8.3.3 模块间的信息传递293

8.4 子程序库298

8.4.1 子程序库298

8.4.2 建立子程序库298

8.4.3 使用举例301

8.5.1 汇编格式的编译结果303

8.5 编写供Turbo C调用的函数303

8.5.2 汇编模块应该遵守的约定306

8.5.3 参数传递和寄存器保护307

8.5.4 举例309

8.6 习题313

第二部分 提高部分314

第9章 90386程序设计基础314

9.1 80386寄存器314

9.1.2 段寄存器315

9.1.1 通用寄存器315

9.1.3 指令指针和标志寄存器316

9.2 80386存储器寻址316

9.2.1 存储器寻址基本概念317

9.2.2 灵活的存储器寻址方式318

9.2.3 支持各种数据结构320

9.3 80386指令集320

9.3.1 数据传送指令321

9.3.2 算术运算指令326

9.3.3 逻辑运算和移位指令327

9.3.4 控制转移指令330

9.3.5 串操作指令334

9.3.6 高级语言支持指令337

9.3.7 条件字节设置指令340

9.3.8 位操作指令342

9.3.9 处理器控制指令345

9.4.1 说明346

9.4 实方式下的程序设计346

9.4.2 实例348

9.5 习题358

第10章 保护方式下的80386及其编程361

10.1 保护方式简述361

10.1.1 存储管理机制361

10.1.2 保护机制363

10.2 分段管理机制364

10.2.1 段定义和虚拟地址到线性地址转换364

10.2.2 存储段描述符366

10.2.3 全局和局部描述符表369

10.2.4 段选择子370

10.2.5 段描述符高速缓冲寄存器371

10.3 80386控制寄存器和系统地址寄存器372

10.3.1 控制寄存器372

10.3.2 系统地址寄存器374

10.4 实方式与保护方式切换实例375

10.4.1 演示实方式和保护方式切换的实例(实例一)376

10.4.2 演示32位代码段和16位代码段切换的实例(实例二)382

10.5.1 系统段描述符389

10.5 任务状态段和控制门389

10.5.2 门描述符390

10.5.3 任务状态段392

10.6 控制转移395

10.6.1 任务内无特权级变换的转移395

10.6.2 演示任务内无特权级变换转移的实例(实例三)397

10.6.3 任务内不同特权级的变换408

10.6.4 演示任务内特权级变换的实例(实例四)410

10.6.5 任务切换420

10.6.6 演示任务切换的实例(实例五)422

10.7 80386的中断和异常431

10.7.1 80386的中断和异常431

10.7.2 异常类型433

10.7.3 中断和异常的转移方法437

10.7.4 演示中断处理的实例(实例六)442

10.7.5 演示异常处理的实例(实例七)450

10.7.6 各种转移途径小结465

10.8 操作系统类指令466

10.8.1 实方式和任何特权级下可执行的指令467

10.8.2 实方式及特权级0下可执行的指令468

10.8.3 只能在保护方式下执行的指令470

10.8.4 显示关键寄存器内容的实例(实例八)473

10.8.5 特权指令477

10.9 输入/输出保护477

10.9.1 输入/输出保护477

10.9.3 演示输入/输出保护的实例(实例九)481

10.9.2 重要标志保护481

10.10 分页管理机制492

10.10.1 存储器分页管理机制492

10.10.2 线性地址到物理地址的转换493

10.10.3 页级保护和虚拟存储器支持496

10.10.4 页异常498

10.10.5 演示分页机制的实例(实例十)499

10.11 虚拟8086方式506

10.11.1 V86方式506

10.11.2 进入和离开V86方式506

10.11.3 演示进入和离开V86方式的实例(实例十一)510

10.11.4 V86方式下的敏感指令522

10.12 习题523

第11章 80486及Pentium程序设计基础525

11.1 80486程序设计基础525

11.1.1 寄存器525

11.1.2 指令系统527

11.1.3 片上超高速缓存530

11.2.1 调试寄存器535

11.2 80486对调试的支持535

11.2.2 演示调试故障/陷阱的实例538

11.3 Pentium程序设计基础543

11.3.1 寄存器543

11.3.2 指令系统545

11.3.3 处理器的识别548

11.3.4 片上超高速缓存553

11.4 基于Pentium的程序优化技术557

11.4.1 流水线优化技术557

11.4.2 分支优化技术564

11.4.3 超高速缓存优化技术567

11.5 习题569

第三部分 上机实验指导572

第12章 实验指导572

12.1 实验的一般步骤572

12.2 汇编器和连接器的使用574

12.2.1 MASM的使用574

12.2.2 LINK的使用575

12.2.3 TASM的使用577

12.3 调试器DEBUG的使用578

12.2.4 TLINK的使用578

12.3.1 启动和退出DEBUG579

12.3.2 命令一览580

12.3.3 利用DEBUG调试程序582

12.4 Turbo Debugger的使用587

12.4.1 启动和退出TD587

12.4.2 利用TD调试汇编程序588

参考文献592

附录Pentium指令与标志参考表593

热门推荐