本书选择了当今广为流行的以Intel 80x86系列为CPU的PC及其兼容机作为硬件平台,以DOS和Window。两种操作系统作为软件平台,深入讨论实模式和保护模式的汇编语言程序没计。
伞书典分12章,由两部分组成。第1部分介绍Inlel 80x86系列微处理器的基础知识、实模式汇编语言程序设计等,卡要内容包括:预备知识、微处理器的基础知识、寻址方式及指令集、汇编语言程序组织、程序的基本结构及其程序设计、子程序与宏指令设计、实模式I/O程序设计、汇编讲言高级编程技巧等。第2部分介绍据f Windows的保护模式程序设计,主要内容包括:32位CPU及Windows基础、Windows汇编语高'稗序i殳计基础、深入Windows汇编编程、保护模式及其应用等。本书内容由浅入深、循序渐进、实例丰富,许多完整程序都是有一定难度的实际应用,很有参考价值。本书每章后均附有习题·以便渎者检查及巩固所学知识。 本书既可作为高等院校计算机科学与技术专业及其相关专业的本科教材,也可供从事计算机开发及研究的工程技术人员参考。
目录
- 第1部分 实模式编程
- 第1章 预备知识
- 1.1进位记数制及不同数制间的转换
- 1.1.1什么是进位记数制
- 1.1.2计算机中常用的进位记数制
- 1.1.3不同进位记数制之间的转换
- 1.2二进制数的算术和逻辑运算
- 1.2.1二进制数的算术运算
- 1.2.2二进制数的逻辑运算
- 1.3数和字符在计算机中的表示方法
- 1.3.1整数在计算机中的表示
- 1.3.2字符编码
- 1.3.3BCD码
- 习题1
- 第2章 微处理器的基础知识
- 2.1Intel 80x86系列微处理器简介
- 2.1.1Intel 80x86系列微处理器
- 2.1.23种运行模式
- 2.2程序可见寄存器组
- 2.3存储器
- 2.3.1基本概念
- 2.3.2存储器分段管理
- 2.3.3实模式存储器寻址
- 2.4PC操作系统的发展
- 2.4.1MSDOS
- 2.4.2桌面Windows系统
- 2.4.3Windows NT系列
- 2.4.4Linux
- 2.5DOS 内存布局
- 2.6外部设备及I/O地址空间
- 2.7汇编语言概述
- 2.7.1程序设计语言概述
- 2.7.2汇编语言概述
- 习题2
- 第3章 寻址方式及指令集
- 3.1Intel 80x86指令集的发展
- 3.2与数据有关的寻址方式
- 3.3数据传送指令
- 3.4算术运算指令
- 3.4.1二进制算术运算指令
- 3.4.2十进制算术运算指令
- 3.5逻辑指令
- 3.6程序控制指令
- 3.6.1与转移地址有关的寻址方式
- 3.6.2程序控制指令简介
- 3.7处理机控制指令
- 3.8串操作指令
- 3.9条件字节设置指令
- 习题3
- 第4章 汇编语言程序组织
- 4.1汇编语言语句格式
- 4.2汇编语言源程序结构
- 4.2.1典型的.exe文件结构
- 4.2.2典型的.com文件结构
- 4.3常用伪指令
- 4.3.1数据定义伪指令
- 4.3.2LABEL伪指令
- 4.3.3符号定义伪指令
- 4.3.4对准伪指令
- 4.3.5结构伪指令
- 4.3.6微处理器伪指令
- 4.4汇编语言操作符
- 4.5汇编语言程序上机过程
- 4.5.1.exe文件上机过程
- 4.5.2.com文件上机过程
- 4.5.3高版本——集汇编与连接一起的MLexe
- 4.6调用ROM BIOS或DOS中断实现数据的输入输出
- 4.6.1使用ROM BIOS中断调用
- 4.6.2使用DOS系统功能调用
- 4.7简化段定义
- 习题4
- 第5章 程序基本结构及其程序设计
- 5.1顺序结构及简单程序设计
- 5.2分支结构及程序实现
- 5.3循环结构及程序实现
- 习题5
- 第6章 子程序与宏指令设计
- 6.1子程序结构及设计方法
- 6.1.1含有子程序的程序结构
- 6.1.2设计子程序时应注意的问题
- 6.2子程序参数传递
- 6.2.1通过寄存器传递
- 6.2.2同模块中的子程序可直接访问模块中的变量
- 6.2.3通过地址表传递参数地址
- 6.2.4通过堆栈传递参数或参数地址
- 6.3嵌套与递归子程序
- 6.4宏指令
- 6.4.1宏定义、宏调用、宏扩展
- 6.4.2LOCAL伪指令
- 6.4.3宏指令嵌套
- 6.4.4宏操作符
- 6.4.5列表伪指令
- 6.5宏指令库
- 6.5.1建立宏指令库
- 6.5.2包含与删除——INCLUDE和PURGE伪指令
- 6.5.3使用宏指令库中的宏指令
- 6.5.4宏指令与子程序的区别
- 6.6重复伪指令
- 6.6.1重复伪指令REPT
- 6.6.2不定重复伪指令
- 6.7条件伪指令
- 习题6
- 第7章 实模式I/O程序设计
- 7.1概述
- 7.2程序查询方式
- 7.3中断传送方式
- 7.3.1中断的基本概念
- 7.3.2中断分类
- 7.3.3可屏蔽中断的进一步讨论
- 7.3.4中断优先级与中断嵌套
- 7.3.5实模式中断处理过程
- 7.3.6存取中断向量
- 7.3.7中断处理子程序的设计步骤
- 7.3.8中断程序设计举例
- 7.4DMA方式简介
- 7.5磁盘文件存取技术
- 7.5.1文件命名
- 7.5.2DOS的句柄式文件管理功能
- 7.5.3利用句柄存取文件的程序举例
- 7.5.4字符设备句柄式输入输出
- 习题7
- 第8章 汇编语言高级编程技巧
- 8.1模块化程序设计
- 8.1.1模块通信
- 8.1.2模块连接
- 8.1.3模块组织建议
- 8.1.4模块程序设计上机步骤
- 8.1.5综合举例
- 8.2汇编语言程序与高级语言程序的连接
- 8.2.1在C程序中直接嵌入汇编代码
- 8.2.2在C程序中直接调用汇编子程序
- 8.2.3汇编语言程序调用C函数
- 8.3使用DOS EXEC功能执行程序
- 8.3.1DOS的内存分配与释放功能简介
- 8.3.2使用DOS EXEC功能加载并执行程序
- 8.4TSR程序设计
- 习题8
- 第2部分 保护模式编程
- 第9章 32位CPU及Windows基础
- 9.1保护模式基础
- 9.1.132位CPU内部结构
- 9.1.2程序不可见寄存器组
- 9.2内存管理
- 9.2.1分段内存管理
- 9.2.2分页内存管理
- 9.2.3寻址方式的增强
- 9.3Windows环境
- 9.3.1Windows程序的执行环境
- 9.3.2Windows的保护机制
- 9.3.332位堆栈
- 习题9
- 第10章 Windows汇编语言程序设计基础
- 10.1Windows汇编环境
- 10.1.1Windows下的MASM与LINK
- 10.1.2Windows汇编源程序的格式
- 10.1.3图形界面与字符界面
- 10.2Windows下的子程序设计与函数调用
- 10.2.1通过全局变量及寄存器传递参数
- 10.2.2C函数的参数传递方式cdecl
- 10.2.3伪指令invoke
- 10.2.4Windows中汇编与C的相互调用
- 10.2.5在汇编中调用Windows的API
- 10.2.6C++与汇编
- 10.3使用Visual C编译调试汇编程序
- 10.3.1建立工程
- 10.3.2设置调试选项
- 10.3.3常用调试命令
- 习题10
- 第11章 深入Windows汇编编程
- 11.1汇编高级语法
- 11.1.1条件测试表达式
- 11.1.2分支伪操作
- 11.1.3循环伪操作
- 11.2程序优化
- 11.2.1运行时间的优化
- 11.2.2占用空间的优化
- 11.3文件操作
- 11.3.1文件操作的基本函数
- 11.3.2文件处理实例
- 11.4结构化异常处理
- 11.4.1捕捉程序中的异常
- 11.4.2汇编程序中的异常处理
- 习题11
- 第12章 保护模式及其应用
- 12.1特权级保护
- 12.1.1对数据访问的保护
- 12.1.2对程序转移的保护
- 12.1.3门
- 12.2任务
- 12.2.1任务状态段
- 12.2.2任务切换
- 12.2.3输入输出保护
- 12.3中断和异常
- 12.3.1中断和异常的类型
- 12.3.2中断门和陷阱门
- 12.3.3中断和异常的处理过程
- 12.3.4外部中断源
- 12.3.5通过任务门的转移
- 12.4虚拟8086模式
- 12.5操作系统类指令
- 习题12
- 附录A 汇编语言伪指令和操作符
- 附录B DEBUG调试工具
- 附录C INT 21H DOS系统功能调用中断
- 附录D BIOS中断调用
-
参考文献