- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 第5章 汇编语言与汇编程序 【本章重点】本章重点在于介绍汇编语言的指令格式和伪指令格式、汇编程序的上机调试过程等等,为后面学习微型计算机接口的编程打好基础。 【本章难点】本章难点是汇编程序的上机调试过程,它是掌握汇编语言的关键。 汇编程序的执行过程 §5.1 汇编语言的语句格式 一条汇编语言指令中最多包含4个区段,如下所示: [标号]: 操作码 [目的操作数,源操作数] [;注释] 其中用方括号括起来的部分,可以有,也可以没有。 标号与操作码之间“:”隔开; 操作码与操作数之间用“空格”隔开; 目的操作数和源操作数之间有“,”分隔; 操作数与注释之间用“;”隔开。 §5.2 汇编语言中的常数与表达式 5.2.1常数 常数可以分数值常数和字符串常数两类。数值常数按其基数的不同,可有二进制数、八进制数、十进制数、十六进制数等几种不同的表示形式,汇编语言中采用不同的后缀加以区分。 B:表示二进制数。例如。 D:表示十进制数。例如,278D或278。 Q:表示八进制数。例如,567Q,263Q。 H:表示十六进制数。例如,9AH,5678H。 字符串常数是由单引号括起来的一串字符。例如: ‘THIS IS A STUDENT!’ ‘12345’ 要指出的是,此处的’12345’其值并非是十进制数12345,而是代表它们所对应的ASCⅡ码,即31H,32H,33H,34H,35H。 5.2.2表达式和运算符 在表达式中,运算符充当着重要的角色。8086宏汇编有算术运算符、逻辑运算符、关系运算符、分析运算符和综合运算符共5种。 算术运算符 逻辑运算符 关系运算符 分析运算符 综合运算符 +(加法) AND(与) EQ(相等) SEG(求段基值) PTR -(减法) OR(或) NE(不相等) OFFSET(求偏移量) THIS ×(乘法) XOR(异或) LT(小于) TYPE(求变量类型) SHORT ÷(除法) NOT(非) GT(大于) LENGTH(求变量长度) HIGH MOD(求余) ? LE(小于或等于) SIZE(求字节数) LOW SHL(左移) ? GE(大于或等于) ? ? SHR(右移) ? ? ? ? 8086汇编语言中的运算符 分析运算符共有5个:SEG(求段基值)、OFFSET(求偏移量)、TYPE(求变量类型)、LENGTH(求字节数)和SIZE(求字节数)。其中LENGTH和SIZE只对数据存储器地址操作数有效。 1)SEG运算符:利用运算符SEG可以得到一个标号或变量的段基址 使用格式:SEG变量名或标号名 例如:已知数据段DATA从存储器实际地址03000H开始,作如下定义后,用SEG运算符求变量所在的段基址。 DATA SEGMENT ? ;定义数据段 ? VARl DB 10H,18H,25H,34H ;定义字节数据 ? VAR2 DW 2300H,1200H ;定义字数据 ? VAR3 DD :定义双字数据 DATA ENDS ? ;数据段结束 MOV BX,SEG VARl 汇编成: MOV BX,0300H MOV CX,SEG VAR2 汇编成: MOV CX,0300H MOV DX,SEG VAR3 汇编成; MOV DX,0300H 2)OFFSET运算符:利用运算符OFFSET可以得到一个标号或变量的偏移量。 使用格式:OFFSET 变量名或标号名 例如:对于上例中所定义的数据段,采用OFFSET运算符求出变量VARl和VAR2的偏移量。则: MOV BX,OFFSET VAR1 汇编成: MOV BX,0000H MOV CX,OFFSET VAR2 汇编成: MOV CX,0004H MOV DX,OFFSET VAR3 汇编成: MOV DX,0008H ? 3)TYPE运算符:TYPE运算符可加在变量、结构或标号的前面,所求出的是这些存储器操作数的类型部分。运算符TYPE的运算结果是一个数值,这个数值与存储器操作数类型属性的对应关系 存储释操作数类型 TYPE返回值 字节数据BYTE(DB定义) 1 字数据WORD(DW定义) 2 双字数据DWORD(DD定义) 4 DATA SEGMENT ;定义数据段 VARl DB 10H,18H,25H,34H ;定义字
您可能关注的文档
最近下载
- 中国专利奖申报书.docx VIP
- 约翰克兰John Crane SE系列 培训指南.pdf VIP
- 结构化面试护士50道面试题附答案.docx VIP
- 山东省三级老年病医院基本标准(2023).docx VIP
- 统编版小学三年级上册语文精品课件 司马光.ppt VIP
- ancient-chinese-philosophy中国古代哲学.ppt VIP
- 4.3海-气相互作用课件 高中地理人教版(2019)选择性必修一.pptx VIP
- 砂土地基钢板桩施工振动锤选型及应用-华北交通工程.pdf
- 10SG614-2 砌体填充墙构造详图(二)(与主体结构柔性连接).pdf VIP
- 超声检测技术.ppt VIP
文档评论(0)