网站大量收购独家精品文档,联系QQ:2885784924

汇编语言设计 教案 第四章 汇编语言程序格式课件.ppt

汇编语言设计 教案 第四章 汇编语言程序格式课件.ppt

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言设计 教案 第四章 汇编语言程序格式课件

第四章 汇编语言程序格式;2、汇编程序的主要功能 检查源程序 策出源程序中的语法错误,并给出出错信息 产生源程序的目标程序,并可给出列表文件(同时列出汇编语言和机器语言的文件,称为LST文件) 展开宏命令;4.2 伪 操 作;4.2.2 段定义伪操作;段定义伪操作格式为: 段名 SEGMENT [定位] [组合] [段字] [‘类别’] ……… 段名 ENDS 说明:段名由用户自己起,要符合汇编语句对名字的要求。SEGMENT定义一个段的开始,ENDS定义该段的结束。删节部分,对于数据段、附加段和堆栈段来说,一般是存储单元的定义、分配等伪操作;对于代码段则是指令及伪操作;ASSUME伪指令 格式: ASSUME 段寄存器:段名[,段寄存器:段名……] 功能:说明段寄存器和段之间的关系。 说明:若一个段寄存器与NOTHING关联,则表示取消前边对该段寄存器的假设,可以省略。ASSUME语句并不给段寄存器赋值,它应放在引用段寄存器之前,通常放在代码段或主过程的第一个语句位置。ASSUME伪操作只是指定某个段分配给哪个段寄存器(CS、DS、SS、ES),并不能把段地址装入段寄存器中,因此在代码段中,还必须把段地址装入相应的段寄存器中。;返回DOS的两种方法;2. 存储模式与简化段定义伪操作;简化段定义标准格式:;段组定义伪指令 组名 GROUP 段名[,段名]………;4.2.3 程序开始和结束伪操作;4.2.4 数据定义及存储器分配伪操作;助记符是数据类型的符号表示。 助记符 数据类型 一个数据项字节数 DB(BYTE) 字节型 1 DW(WORD) 字型 2 DD(DWORD) 双字型 4 DQ(QWORD) 四字型 8 DF(FWORD) 六字节型(386以上机型有效) 6 DT(TBYTE) 10字节型 10 ;操作数可以是数字常量、数值表达式、字符串常量、地址表达式、?、n DUP(操作数,……)形式。 数字常量及数值表达式: 操作数可以是常数、表达式。数字中若出现字母形式,不区分大小写。如下所示: 二进制数:以B结尾,有效数字是0、1。 八进制数:以Q或O(字母)结尾,有效数字是0~7。 十进制数:以D结尾,汇编语言中缺省值是十进制数,所以D可以省略不写。有效数字是0~9。 十六进制数:以H结尾,有效数字是0~9和A(a)~F(f)。若第一位数字是字母形式,则必须在前边加上0(数字)。;字符串常量 在汇编语言中字符需要用单引号括起来,其值为字符的ASCII值。因为每个字符占用一个字节,所以最好用DB助记符定义字符串。 地址表达式 操作数可以是地址符号。若只定义符号的偏移量部分,则使用DW助记符。若要定义它的双字长地址指针(既含16位偏移量又含段基址),则使用DD助记符,其中低字中存放偏移量,高字中存放段基址。若要定义它的全地址指针(既含32位偏移量又含段基址),则使用DF助记符,其中低32位存放偏移量,高16位存放段基址。例如,“VAR DW LAB”语句在汇编后VAR中含有LAB的偏移量。; ? 在程序中使用操作数?为变量预留空间而不赋初值。 n DUP(操作数,……) DUP是复制操作符,若要对某些数据重复多次,可以使用这种格式。其功能是把( )中的内容复制n次。DUP操作可以嵌套使用。; 例1. M1 DB 15,67H,? M2 DB ‘15’,’AB$’ M3 DW 4*5 M4 DD 1234H M5 DB 2 DUP(5,’A’) M6 DW M2 ;M2的偏移量 M7 DD M2 ;M2的偏移量、段基址 M8 DB ‘AB’ M9 DW ‘AB’ 设以上数据自1470:0000开始存放,则为: 0F 67 F0 00 31 35 41 42 24 14 00 34 12 00 00 05 41 05 41 04 00 04 00 70 14;例2 可直接通过变量名引用变量,但要注意类型匹配。例如以下程序片段: MOV AL,M1 ;(AL)= 15 MOV BX,M3 ;(BX)= 20 ADD M3,6 ;(M3)= 26 MOV AL,M2 ;(AL)=’1’=31H MOV BL,M2+2 ;(BL)=’A’=41H MOV M1+3,BL ;(M1+3)= 41H;PTR属性操作符 格式:类型名 PTR 变量|标号 给变量或标号指定类型属性BYTE、WORD、WORD、 ……; NEAR、 FAR;STRUCT、RECORD等类型的定义。例: OPER1 DB 1,2 OPER2 DW 12

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档