微机原理7-09.ppt

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

第七章 微机汇编语言及汇编程序 第七章 微型计算机汇编语言及汇编程序 1、汇编语言·机器语言·源程序·目标程序·汇编程序 7.1 宏汇编语言的基本语法 7.1.1 伪指令语句格式 伪指令格式如图7-2所示。 7.1.2 常数、标号和变量 1、常数:数值常数和字符常数。 (1)数值常数:2、10、16进制数和实数等。 (2)字符串常数:用引号括起来的1个或多个字符。字符以ASCII码形式存储在内存中。 3、变量:存放数据内存单元的符号地址 (1)变量的定义与预置:定义变量是给某存储单元赋于一个符号名(变量名),变量定义伪指令:DB,DW,DD等,例如: VAR—DATA SEGMENT DATA1 DB 12H DATA2 DB 34H DATA3 DW 5678H VAR—DATA ENDS 经过定义的变量,有3个属性: 段属性(SEG):变量所在的逻辑段(即知变量的段基值) 偏移量属性(OFFSET):变量离本段起始点的字节数。 段属性和偏移量属性就构成了变量的逻辑地址。 类型属性(TYPE):变量占用存储单元的字节数。 表达式是给变量赋予初值,有下几种情况。 DD为两个字符的字符串分配4个字节单元,字符串存放在低地址(存储顺序与DW伪指令相同)中,两个高地址均存放00H。例如: STRING3 DD ‘AB’,‘CD’ 在存储器中存放的情况如图7-3(c)所示。 ④带DUP表达式:DUP定义重复数据操作符。格式为: DB 变量名 DW 表达式1 DUP (表达式2) DD 7.1.3 表达式与运算符 表达式由运算符号和运算对象组成,在汇编时,一个表达式得到一个值。运算符号可分六类: 4、分析运算符: (1)SEG的格式: SEG 〈符号名〉 (2)OFFSET的格式: OFFSET〈符号名〉 (3)TYPE的格式:TYPE〈符号名〉;符号名类型值参照表7-1 (4)SIZE的格式:SIZE (符号名) (5)LENGTH的格式:LENGTH(符号名) 为符号名定义的数据项必须是用重复格式DUP( )定义的。 SIZE (符号名)=(LENGTH符号名) ×(TYPE符号名)。 ?5、组合运算符:用来改变或建立符号名的新类型。 (1)PTR用来明确指出某个变量、标号或地址表达式的类型属性。其格式为: (类型)PTR(符号名) 例:ABC为字节变量,把它的两个字节内容送到AX中。 MOV AX,WORD PTR ABC 7.2 伪 指 令 1、数据定义伪指令(变量定义) 格式:变量名 DB(或DW、DD等) 操作数 [,操作数….] 例1 FIRST DB 5AH SECOND DW 1122H THREE DD 2A004455H 例2 ONE DB ‘ABCDEF’ TWO DW ‘AB’,‘CD’ 例3用问号定义不确定的值,常用来存放结果。 ABOV DB ? SUM DW ? 例4 TAB1 DB 10 DUP (?) 2、符号定义伪指令(赋值语句) (1)〈名字〉 EQU〈表达式〉 ABC EQU 1234H ADE EQU 12H AND 37H (2)〈名字〉=表达式 (1) 连接方式(组合类型):段与段是如何连接的。 (2)定位方式:LINK程序还要把联合得到的各个段在存储器中相继存放。相邻两段之间应如何衔接叫做定位方式。定位方式确定段的起始地址边界。 (3)‘类别名’:合法自定义符,用单引号括起来。在进行连接时,LINK把类别名相同的所有段放在连续的存储区域内;在连接时均按先后顺序连接起来。 4、段寄存器说明伪指令 格式:ASSUNE 段寄存器:段名1[,段寄存器:段名2,…] 在汇编时,该伪指令指定CS、DS、SS和ES,应具有的符号段基址。段寄存器实际值(CS除外),还要用传送指令给其赋值。 8、模块结束伪指令:作用指出源文件结束,并给出执行程序的入口位置。启动地址只有在主模块才有意义。 格式:END [启动标号或过程名] 7.3 宏 指 令 把某程序段定义为“宏指令”,当要引用这段程序时,只需要一条宏调用指令。 “宏指令”与“过程”有相似之处,两者主要区别如下: 宏指令的使用要经过如下3个步骤: ①宏定义:对宏指令进行定义,并给一个宏名; ②宏调用:在需要使用时,通过宏名来调用它; ③宏扩展:由宏汇编程序用宏定义中的指令来 代替宏调用中的宏指令名。 ABC MACRO Y, X MOV CL,

文档评论(0)

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

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

1亿VIP精品文档

相关文档