- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 汇编语言及汇编程序设计 本章主要教学内容 汇编语言和汇编程序的基本概念 汇编语言指令语句基本格式 汇编语言的表达式和运算符 伪指令语句的格式及功能 汇编语言程序的上机过程 汇编语言程序的设计方法 汇编编程的基本方法 系统功能调用 第5章 汇编语言及汇编程序设计 本章教学目的及要求 理解汇编语言和汇编程序的概念、特点及其应用。 掌握汇编语言源程序书写规则、语句的基本格式。 熟悉汇编语言的基本表达、伪指令语句及其应用。 熟悉汇编语言程序的上机运行、调试过程,掌握基本操作技能。 掌握汇编程序的基本设计方法。 熟悉系统功能调用的概念、方法,并掌握基本功能的用法。 第5章 汇编语言及汇编程序设计 5.1 汇编语言和汇编程序的基本概念 5.2 指令语句的基本格式 5.3 表达式和运算符 5.4 伪指令语句的格式及功能 5.5 宏指令与条件汇编 5.6 汇编语言程序的上机过程 5.7 汇编语言程序的设计方法 5.8 汇编编程的基本方法 5.9 系统功能调用 5.1 汇编语言和汇编程序的基本概念 5.1.1 汇编语言 汇编语言是一种面向CPU指令系统的程序设计语言; 用助记符表示操作码,符号代表操作数或操作数地址,以及指令地址等; 相对于机器语言:易记、易读、易编写、易修改; 保留了机器语言面向硬件操作的优势,程序效率高(速度快/空间小); 主要用于系统程序和实时控制程序的编制。 5.1.2 汇编程序 用汇编语言编写的程序(文本文件)称为源程序; 汇编语言源程序不能由机器直接执行,必须翻译成对应的机器代码,再由机器执行; 翻译源程序的过程叫汇编; 翻译出来的程序叫目标程序; 现有多种软件(程序)可以把汇编语言源程序翻译成目标程序,这些软件称为汇编程序; 常用汇编程序基本汇编ASM-86和宏汇编MASM-86。 5.1.3 汇编语言源程序的组成 指令:与CPU 指令系统具有一一对应关系的指令,亦称为硬指令;汇编时一条指令语句被翻译成对应的目标代码,对应着特定的操作。 伪指令:伪指令语句在汇编过程中通过一些管理控制性语句,告诉汇编程序应该如何汇编,它不产生目标代码,即不直接命令CPU去执行什么操作 。 宏指令(使用宏汇编时):宏指令语句是由编程者按照一定的规则来定义的一种较“宏大”的指令,可包括多条指令或伪指令 。 表达式:根据汇编语言的语法要求,构成各种指令的操作对象,编译过程中会对其值进行计算。 5.2 指令语句的基本格式 5.2.1 8086/8088汇编语言指令语句的基本格式 格式说明: 由前向后的箭头表示是可选项; 由后向前的箭头是重复项; 圆头框表示是语句中的关键字 。 5.2.2 指令语句的基本要求 1. 标号是指令的符号地址,必须以“:”结尾,是可选项。8086/8088汇编语言中使用的标号必须遵循下列规则: 字母(a~z,A~Z),数字(0~9)或某些特殊字符( @、_、 $、 ?等)组成; 第一个字符必须是除数字外的字符形式; “?”不能单独作为标号; 标号的有效长度为31位。 2. 助记符是指令名称的代表符号,是指令语句中的关键字,不可省略。必要时可以在指令助记符的前面加上一个或多个“前缀”,实现某些附加操作。 3. 操作数是指令执行需要的数据。 有些指令不需要操作数,可以默认; 有些指令需要多个操作数,必须以“,”将其隔开; 操作数可以是表达式。 4. 注释是对指令功能加以说明,方便阅读和理解程序,汇编程序不对它进行任何处理。 是可选项; 注释必须用“;”开头(单条语句)。 5.3 表达式和运算符 汇编语言源程序中,指令操作数除了可以是单独的常数、寄存器、变量和标号外,还可以是表达式; 表达式是由常量、寄存器、变量、标号和运算符组成的序列; 程序汇编时,计算表达式并产生一个确定的值。这个值可以仅表示一个常量,也可以表示一个存储单元的地址信息(变量和标号),相应的表达式称为常量表达式和地址表达式。 5.3.1 常量、变量和标号 常量 常量是没有任何属性的纯数据; 汇编期间,其值已能完全确定,且在程序运行过程中也不会发生任何变化; 常量包括数值型常量和字符型常量; 数值型常量可分为整型数和实数; 整型数可以用二进制、八进制、十进制和十六进制形式表示; 实数用十进制形式给出。 1. 数值型常量 二进制数:由0和1组成的数字序列,并以字母B结尾的数,如0100100B。 八进制数:由0,1,……7组成,以字母Q结尾的数,如732Q。 十进制数:由0~9组成,并以字母D结尾或没有结尾字母的数,如92D,92。 十六进制数:由0~9,A~F组成,以字母H结尾,如3F80H。其中如果以字母A~F开始的十六进制数,须在之前加上数字0,以区别于符号,如0EFH。 实数:由整数、小数和指数三部
文档评论(0)