汇编语言程序设计
本书编写的主要特点是突出理论性、实践性、先进性、通俗性,力求教学、自学方便,使学生在尽量短的时间内熟练掌握最基本的汇编语言的功能、用法和编程技巧。教材以项目驱动教学方法编写,采用任务的形式进行组织,以通俗易懂的语言向读者讲述汇编语言程序设计的基本知识。全书结构清晰、重点突出,用简洁的语言、丰富的插图和实例介绍了以80x86指令系统为主的汇编语言基础理论知识和程序设计基本方法。项目介绍由浅入深、循序渐进,将汇编语言程序设计的基础知识融于项目实例之中,符合学生的认知规律和技能训练的特点,可以充分调动学生的学习积极性与主动性。
本书各项目的具体内容如下:
项目一主要介绍了汇编语言基础知识、计算机中数和字符的表示、80x86微处理器、内存储器、外部设备等内容,重点是学习汇编语言基础知识。
项目二主要介绍了80x86指令系统、80x86寻址方式、80x86基本指令等内容。该项目是本书的重点之一,为后续的学习打下了坚实的基础。
项目三主要讲述汇编语言的表达式、伪指令、DOS功能调用以及上机调试过程等基本知识。
项目四主要介绍了汇编语言程序设计的概述、顺序程序设计、分支程序、循环和串操作等内容。该项目也是本书的重点之一,为后续的学习打下了坚实的基础。
项目五主要介绍了子程序设计技术和宏操作的相关知识及编程技巧。
项目六主要介绍了输入/输出概念、中断及中断程序设计、BOIS功能调用、鼠标、键盘、显示器等基本的知识点。
项目七主要介绍了磁盘文件、传统磁盘文件管理方式、扩展磁盘文件管理方式、磁盘文件管理及应用等文件存取技术的相关知识点。
项目八主要介绍了汇编语言扩展技术,包括:条件汇编技术、重复汇编技术、多模块技术以及C与汇编混合编程技术。
本书在编排上注重理论与实践相结合,采用任务式教学模式,突出实践环节,充分体现“工学结合一体化”教学思想。本书将项目分解为若干任务,每个任务由任务描述、任务分析、知识准备、任务实施四部分组成,全书共设置任务36个。正文中设置了小提示、拓展提高以及知识链接等特色模块,意在提高学生的学习兴趣,促进学生的全面发展。全书共设置小提示32个,知识链接11个,拓展提高10个。每个项目最后设置了项目小结和项目考核内容。
项目一 汇编语言基础知识
任务一:认识汇编语言
任务描述
任务分析
知识准备
一、汇编语言
二、汇编语言的特点
三、恰当地使用汇编语言
任务实施
任务二:数值的表示
任务描述
任务分析
知识准备
一、原码,反码,补码
二、字符编码
任务实施
任务三:80x86处理器的存储器与堆栈
任务描述
任务分析
知识准备
一、从8086到80286
二、80386和80486
三、Pentium和Pentium Pro
四、80x86微处理器的编程结构
五、计算机存储概述
六、实模式下存储器的组织
七、保护模式下存储器的组织
八、堆栈的结构与数据存取
任务实施
项目小结
项目考核
项目二 80x86的指令系统
任务一:80x86指令系统概述
任务描述
任务分析
知识准备
一、了解80x86的指令种类
二、了解80x86的指令格式
任务实施
任务二:80x86寻址方式
任务描述
任务分析
知识准备
任务实施
任务三:了解8086基本指令
任务描述
任务分析
知识准备
一、数据传送指令
二、算术运算指令
三、逻辑运算指令
四、程序控制类指令
五、输入/输出类指令
六、处理器控制类指令
任务实施
项目小结
项目考核
项目三 汇编语言程序结构
任务一:了解汇编语言程序设计要素
任务描述
任务分析
知识准备
一、汇编语句
二、常量
三、数值表达式
四、地址表达式
五、变量和标号的定义
六、变量和标号的属性
七、变量定义伪指令
八、段定义伪指令
九、段使用设定伪指令ASSUME
十、ORG语句
十一、源程序开始和结束伪指令
任务实施
任务二:调用DOS功能
任务描述
任务分析
知识准备
任务实施
任务三:创建汇编语言开发环境
任务描述
任务分析
知识准备
任务实施
项目小结
项目考核
项目四 汇编语言程序设计基本方法
任务一:设计顺序结构程序
任务描述
任务分析
知识准备
任务实施
任务二:设计分支程序——转移指令
任务描述
任务分析
知识准备
任务实施
任务三:设计分支程序——双分支结构
任务描述
任务分析
知识准备
任务实施
任务四:设计分支程序——多分支结构
任务描述
任务分析
知识准备
任务实施
任务五:设计循环程序——单循环结构
任务描述
任务分析
知识准备
任务实施
任务六:设计循环程序——多重循环结构
任务描述
任务分析
知识准备
任务实施
任务七:设计程序——串操作
任务描述
任务分析
知识准备
任务实施
任务八:设计数据运算程序——BCD数加法
任务描述
任务分析
知识准备
任务实施
任务九:设计数据运算程序——BCD数减法
任务描述
任务分析
知识准备
任务实施
任务十:设计数据运算程序——BCD数乘法
任务描述
任务分析
知识准备
任务实施
任务十一:设计数据运算程序——BCD数除法
任务描述
任务分析
知识准备
任务实施
项目小结
项目考核
项目五 子程序和宏
任务一:设计子程序
任务描述
任务分析
知识准备
一、子程序的定义
二、子程序的调用和返回
三、现场的保护与恢复
四、主程序与子程序之间的参数传递
任务实施
任务二:使用宏
任务描述
任务分析
知识准备
任务实施
项目小结
项目考核
项目六 输入/输出设计
任务一:输入/输出基本概念
任务描述
任务分析
知识准备
一、输入/输出端口地址
二、基本输入/输出指令
三、串输入/输出指令
四、数据传送方式
任务实施
一、无条件传送方式举例
二、查询方式举例
任务二:中断及中断程序设计
任务描述
任务分析
知识准备
一、中断和中断传送方式
二、中断向量表
三、中断响应过程
四、外部中断
五、内部中断
六、中断优先级和中断嵌套
任务实施
任务三:BIOS功能调用——键盘
任务描述
任务分析
知识准备
一、键盘数据区
二、键盘输入的INT H操作
任务实施
任务四:BIOS功能调用——显示器
任务描述
任务分析
知识准备
一、显示模式简介
二、文本显示模式
任务实施
一、直接写屏方法
二、彩色文本模式的BIOS中断调用
项目小结
项目考核
项目七 文件存取技术
任务一:编写顺序存取方式程序
任务描述
任务分析
知识准备
一、磁盘文件概念
二、顺序存取方式
任务实施
任务二:编写随机存取方式程序
任务描述
任务分析
知识准备
任务实施
任务三:编写随机分块存取方式程序
任务描述
任务分析
知识准备
任务实施
任务四:编写文件代号存取方式程序
任务描述
任务分析
知识准备
任务实施
任务五:编写移动读写指针程序
任务描述
任务分析
知识准备
任务实施
任务六:操作外部文件
任务描述
任务分析
知识准备
任务实施
项目小结
项目考核
项目八 汇编语言扩展
任务一:重复汇编
任务描述
任务分析
知识准备
任务实施
任务二:条件汇编
任务描述
任务分析
知识准备
任务实施
任务三:多模块程序设计
任务描述
任务分析
知识准备
一、多模块技术
二、多模块的参数设置
任务实施
任务四:C与汇编混合编程
任务描述
任务分析
知识准备
任务实施
项目小结
项目考核
参考文献