《32位汇编语言程序设计》是2011年8月1日机械工业出版社出版的图书,作者是钱晓捷。本书以32位Intel 80x86处理器和个人计算机为硬件平台,基于32位Windows操作系统软件平台,借助微软MASM汇编程序讲解汇编语言程序设计。
《32位汇编语言程序设计》内容包括基本的汇编语言基础、常用处理器指令和汇编语言伪指令以及顺序、分支、循环、子程序结构,还包括扩展的Windows和DOS编程、与C++语言的混合编程、输入输出指令及编程,并涉及浮点、多媒体及64位指令等方面。
《32位汇编语言程序设计》可以作为普通高校“汇编语言程序设计”等课程的教材或参考书,适合计算机、电子、通信和自控等电类专业的本科学生以及软件学院、计算机等电类专业的高职学生、成教学生阅读,同时也适合作为计算机应用开发人员和希望深入学习汇编语言的读者的极佳参考书。
《32位汇编语言程序设计》结合作者近年来的32位汇编语言教学实践,以32位Intel 80x86处理器和个人计算机为硬件平台,基于32位Windows操作系统软件平台,借助微软MASM汇编程序讲解汇编语言程序设计,包括基本的汇编语言基础、常用处理器指令和汇编语言伪指令以及顺序、分支、循环、子程序结构,还包括扩展的Windows和DOS编程、与C++语言的混合编程、输入输出指令及编程,并涉及浮点、多媒体及64位指令等先进技术。
《32位汇编语言程序设计》特色:简单易用的开发环境。《32位汇编语言程序设计》构建了一个简单易用的开发环境,无需安装和配置,直接复制就可使用,方便初学者快速上手。
重点明确的教学内容。《32位汇编语言程序设计》不是详尽展开所有处理器指令、全部汇编伪指令,而是选择处理器通用的基本指令和反映汇编语言特色的常用伪指令;没有引出复杂的程序格式,而是侧重编程思想和技术。
突出实践的教学过程。《32位汇编语言程序设计》以约70个示例程序和约60个习题程序贯穿教学内容。
循序渐进的教学原则。为了便于学生理解和掌握,且便于教师实施教学,《32位汇编语言程序设计》在编写过程中尽量做到描述详尽、图表准确,对重点和难点使用浅显生动的语言,深入浅出地进行详尽讲解。内容丰富的教学网站。为了更好地服务于广大师生和读者,作者开辟了“大学微机技术系列课程教学辅助网站”,提供电子课件、教学大纲、教材勘误、疑难解答、输入输出子程序库、示例源程序文件等辅助资源。
目录
- 前言
- 教学建议
- 第1章 汇编语言基础
- 1.1 Intel 80x86系列处理器
- 1.1.1 16位80x86处理器
- 1.1.2 IA-32处理器
- 1.1.3 Intel 64处理器
- 1.2 个人计算机系统
- 1.2.1 硬件组成
- 1.2.2 寄存器
- 1.2.3 存储器组织
- 1.2.4 程序设计语言
- 1.2.5 软件系统
- 1.3 汇编语言程序格式
- 1.3.1 指令代码格式
- 1.3.2 语句格式
- 1.3.3 源程序框架
- 1.3.4 开发过程
- 第1章习题
- 第2章 数据表示和寻址
- 2.1 数据表示
- 2.1.1 数制
- 2.1.2 数值的编码
- 2.1.3 字符的编码
- 2.2 常量表达
- 2.3 变量应用
- 2.3.1 变量定义
- 2.3.2 变量属性
- 2.4 数据寻址方式
- 2.4.1 立即数寻址方式
- 2.4.2 寄存器寻址方式
- 2.4.3 存储器寻址方式
- 2.4.4 各种数据寻址方式的组合
- 第2章习题
- 第3章 通用数据处理指令
- 3.1 数据传送类指令
- 3.1.1 通用数据传送指令
- 3.1.2 堆栈操作指令
- 3.1.3 其他传送指令
- 3.2 算术运算类指令
- 3.2.1 状态标志
- 3.2.2 加法指令
- 3.2.3 减法指令
- 3.2.4 乘法和除法指令
- 3.2.5 其他运算指令
- 3.3 位操作类指令
- 3.3.1 逻辑运算指令
- 3.3.2 移位指令
- 第3章习题
- 第4章 程序结构
- 4.1 顺序程序结构
- 4.2 分支程序结构
- 4.2.1 无条件转移指令
- 4.2.2 条件转移指令
- 4.2.3 单分支程序结构
- 4.2.4 双分支程序结构
- 4.2.5 多分支程序结构
- 4.3 循环程序结构
- 4.3.1 循环指令
- 4.3.2 计数控制循环
- 4.3.3 条件控制循环
- 4.3.4 多重循环
- 第4章习题
- 第5章 模块化程序设计
- 5.1 子程序结构
- 5.1.1 子程序指令
- 5.1.2 子程序设计
- 5.2 参数传递
- 5.2.1 寄存器传递参数
- 5.2.2 共享变量传递参数
- 5.2.3 堆栈传递参数
- 5.3 多模块程序结构
- 5.3.1 源文件包含
- 5.3.2 模块连接
- 5.3.3 子程序库
- 5.4 宏结构
- 5.4.1 宏汇编
- 5.4.2 重复汇编
- 5.4.3 条件汇编
- 第5章习题
- 第6章 Windows编程
- 6.1 操作系统函数调用
- 6.1.1 动态连接库
- 6.1.2 MASM的过程声明和调用
- 6.1.3 程序退出函数
- 6.2 控制台应用程序
- 6.2.1 控制台输出
- 6.2.2 控制台输入
- 6.2.3 单字符输入
- 6.3 图形窗口应用程序
- 6.3.1 消息窗口
- 6.3.2 结构变量
- 6.3.3 MASM的高级语言特性
- 6.3.4 简单窗口程序
- 第6章习题
- 第7章 与Visual C++混合编程
- 7.1 嵌入汇编
- 7.2 模块连接
- 7.2.1 约定规则
- 7.2.2 堆栈帧
- 7.3 调用高级语言函数
- 7.3.1 嵌入汇编中调用高级语言函数
- 7.3.2 汇编语言中调用C库函数
- 7.4 使用Visual C++开发环境
- 7.4.1 汇编语言程序的开发过程
- 7.4.2 汇编语言程序的调试过程
- 第7章习题
- 第8章 DOS环境程序设计
- 8.1 DOS编程
- 8.1.1 实地址存储模型
- 8.1.2 DOS应用程序框架
- 8.1.3 DOS功能调用
- 8.2 串操作类指令
- 8.2.1 串传送指令
- 8.2.2 串检测指令
- 8.3 输入输出程序设计
- 8.3.1 输入输出指令
- 8.3.2 定时器初始化编程
- 8.3.3 扬声器控制编程
- 8.4 扣断控制编程
- 8.4.1 中断控制系统
- 8.4.2 内部中断服务程序
- 8.4.3 驻留中断服务程序
- 第8章习题
- 第9章 浮点、多媒体及64位指令
- 9.1 浮点指令
- 9.1.1 实数编码
- 9.1.2 浮点寄存器
- 9.1.3 浮点指令及其编程
- 9.2 多媒体指令
- 9.2.1 MMX技术
- 9.2.2 SSE技术
- 9.2.3 SSE2技术
- 9.2.4 ssE3技术
- 9.3 64位指令
- 9.3.1 64位方式的运行环境
- 9.3.2 64位方式的指令
- 第9章习题
- 附录A 调试程序WinDbg
- 附录B 输入输出子程序库
- 附录C 32位通用指令列表
- 附录D MASM伪指令和操作符列表
- 附录E 列表文件符号说明
- 附录F 常见汇编错误信息
- 参考文献