第5章汇编语言与汇编程序

第5章汇编语言与汇编程序

ID:5395769

大小:241.00 KB

页数:41页

时间:2017-11-09

第5章汇编语言与汇编程序_第1页
第5章汇编语言与汇编程序_第2页
第5章汇编语言与汇编程序_第3页
第5章汇编语言与汇编程序_第4页
第5章汇编语言与汇编程序_第5页
资源描述:

《第5章汇编语言与汇编程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章汇编语言与汇编程序【本章重点】本章重点在于介绍汇编语言的指令格式和伪指令格式、汇编程序的上机调试过程等等,为后面学习微型计算机接口的编程打好基础。【本章难点】本章难点是汇编程序的上机调试过程,它是掌握汇编语言的关键。汇编程序的执行过程§5.1汇编语言的语句格式一条汇编语言指令中最多包含4个区段,如下所示:[标号]:操作码[目的操作数,源操作数][;注释]其中用方括号括起来的部分,可以有,也可以没有。标号与操作码之间“:”隔开;操作码与操作数之间用“空格”隔开;目的操作数和源操作数之间有“,”分隔;操作数与注释之间用“;”隔开。

2、§5.2汇编语言中的常数与表达式5.2.1常数常数可以分数值常数和字符串常数两类。数值常数按其基数的不同,可有二进制数、八进制数、十进制数、十六进制数等几种不同的表示形式,汇编语言中采用不同的后缀加以区分。B:表示二进制数。例如,10100101B。D:表示十进制数。例如,278D或278。Q:表示八进制数。例如,567Q,263Q。H:表示十六进制数。例如,9AH,5678H。字符串常数是由单引号括起来的一串字符。例如:‘THISISASTUDENT!’‘12345’要指出的是,此处的’12345’其值并非是十进制数12345,而

3、是代表它们所对应的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(求变量长度)HIGHMOD(求余)

4、LE(小于或等于)SIZE(求字节数)LOWSHL(左移)GE(大于或等于)SHR(右移)8086汇编语言中的运算符分析运算符共有5个:SEG(求段基值)、OFFSET(求偏移量)、TYPE(求变量类型)、LENGTH(求字节数)和SIZE(求字节数)。其中LENGTH和SIZE只对数据存储器地址操作数有效。1)SEG运算符:利用运算符SEG可以得到一个标号或变量的段基址使用格式:SEG变量名或标号名例如:已知数据段DATA从存储器实际地址03000H开始,作如下定义后,用SEG运算符求变量所在的段基址。DATASEGMENT;定义

5、数据段VARlDB10H,18H,25H,34H;定义字节数据VAR2DW2300H,1200H;定义字数据VAR3DD11002200H,33004400H:定义双字数据DATAENDS;数据段结束MOVBX,SEGVARl汇编成:MOVBX,0300HMOVCX,SEGVAR2汇编成:MOVCX,0300HMOVDX,SEGVAR3汇编成;MOVDX,0300H2)OFFSET运算符:利用运算符OFFSET可以得到一个标号或变量的偏移量。使用格式:OFFSET变量名或标号名例如:对于上例中所定义的数据段,采用OFFSET运算符求

6、出变量VARl和VAR2的偏移量。则:MOVBX,OFFSETVAR1汇编成:MOVBX,0000HMOVCX,OFFSETVAR2汇编成:MOVCX,0004HMOVDX,OFFSETVAR3汇编成:MOVDX,0008H3)TYPE运算符:TYPE运算符可加在变量、结构或标号的前面,所求出的是这些存储器操作数的类型部分。运算符TYPE的运算结果是一个数值,这个数值与存储器操作数类型属性的对应关系存储释操作数类型TYPE返回值字节数据BYTE(DB定义)1字数据WORD(DW定义)2双字数据DWORD(DD定义)4DATASEGM

7、ENT;定义数据段VARlDB10H,18H,25H,34H;定义字节数据VAR2DW2300H,1200H;定义字数据VAR3DD11002200H,33004400H:定义双字数据DATAENDS;数据段结束下列指令:MOVBX,TYPEVAR1汇编成:MOVBX,1MOVCX,TYPEVAR2汇编成:MOVCX,2MOVDX,TYPEVAR3汇编成:MOVDX,44)LENGTH运算符:LENGTH运算符放在数组变量的前面,可以求出该数组中所包含的变量的个数。ARRAY1DB100DUP(?)ARRAY2DW10DUP(?)A

8、RRAY3DD10DUP(?)下列指令:MOVBX,LENGTHARRAY1汇编后:MOVBX,100MOVCX,LENGTHARRAY2汇编后:MOVCX,10MOVDX,LENGTHARRAY3汇编后:MOVDX,105)SIZE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。