第4章汇编语言程序设计课件.ppt

第4章汇编语言程序设计课件.ppt

ID:58700591

大小:311.50 KB

页数:71页

时间:2020-10-04

第4章汇编语言程序设计课件.ppt_第1页
第4章汇编语言程序设计课件.ppt_第2页
第4章汇编语言程序设计课件.ppt_第3页
第4章汇编语言程序设计课件.ppt_第4页
第4章汇编语言程序设计课件.ppt_第5页
资源描述:

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

1、主要内容1MASM宏汇编语言结构2MASM汇编语言数据、表达式和运算符3伪指令4程序设计5DOS功能调用6实用程序设计举例第4章汇编语言程序设计1一、MASM汇编语句结构MASM有两种基本语句,它们是指令语句和指示语句(又称伪指令)指令语句(Instructionstatements)指令语句又称可执行语句,它要求CPU执行某种操作。指令语句的格式为:[符号:]指令助记符[操作数][;注释]一条指令一条语句可分为4个字段,其中方括号中的字段为可选项。.2指示语句(pseudeinstructionstatements

2、)指示词句又称伪指令,它不要求CPU执行某种操作,汇编时也不产生对应的机器代码,而仅仅告诉汇编程序,对它后面的指令语句和操作数应该如何产生机器目标代码。伪指令的格式为:[名字]伪指令定义符号[操作数][;注释]区别:伪指令名字后无冒号3二、MASM汇编语言数据、 表达式和运算符常数常数是没有任何属性的纯数值。常数分为两种类型:数值型常数和字符串型常数。4◎数值型常数1.二进制数:以字母B结尾,如01011101B2.八进制数:以字母Q或O结尾,如723Q,211Q。3.十进制数:以字母D(或省略)结尾,如1995D,

3、3508。4.十六进制数:以字母H结尾,如3A40H,8BH。◎字符型常数用单引号括起来的字符串。如‘ABCD’,‘$123456’等。每个字符在机内以ASCII码存放,例如‘A’,再内存为41H。5变量变量用来定义存放在存储器单元中的数据。其三重属性为:◎段属性(SEG)◎偏移地址属性(OFFSET)◎类型属性(TYPE)例:DATASEGMENT对变量的操作:变量名FIRSTDB5AHLEAAX,FIRSTSECONDDW1122HMOVAX,SECONDDATAENDSMOVAX,FIRST[DI]变量名:存放

4、数据存储单元的符号地址6标号:给指令语句所在地址取的名字◎段属性(SEG)◎偏移地址属性(OFFSET)◎距离属性(Distance)例:(隐含为NEAR)LOOP:MOVAX,0000…JMPLOOP7三、伪指令(指示语句)指示性语句又称伪指令,它没有对应的机器指令,不由CPU执行,而是在汇编程序汇编时识别,用于说明CPU的类型、段结构、源程序起止信息和段内存的安排等。MASM的伪指令可分为变量定义语句、标号定义语句、段定义语句、段分配语句、过程定义语句、群定义语句、结构定义语句、记录定义语句等。8变量定义语句※变

5、量定义语句用来定义字节、字或双字变量,变量定义语句有两种不同的格式。◎格式一[变量名]DB/DW/DD/DF/DQ/DT表达式功能:为变量分配1个字节/字/双字/长字/四字/十字节的存储单元,并赋值。具体形式:9(1)用数值表达式定义变量。例如:K1DB5AH;将5AH赋给字节变量K1K2DW2354H;将2354H赋给字变量K2K3DD2A004455H;将2A004455H赋给双字变量K35AH54H23H55H44H00H2AHK1K2K310(2)用字符串定义变量。例如:ONEDB‘HOWAREYOU’;将“

6、HOWAREYOU”字符串赋给变量ONE。TWODW‘OK’;将‘OK’字符串赋给变量TWO‘H’‘O’‘W’…‘O’‘K’ONETWO11(3)存放结果时,用(?)定义不确定值的变量ABOVDB?;定义变量ABOV为不确定值的字节变量BLOWDW?;定义变量BLOW为不确定值的字变量CLERDD?;定义变量BLOW为不确定值的双字变量(4)用数组表达式定义变量。例如:A1DB00H,11H,22H,33HA2DW3456H,1025,25*25,1000/3,10A0H例:MOVAL,A1[3];(AL)=33HM

7、OVAX,A2[1];(AX)=102512◎格式二格式2用于定义重复变量,其格式为:DBDWDDDFDQDT例:TAB1DB10DUP(0)TAB2DW2DUP(?)TAB3DB4DUP(1,2DUP(50H))变量名nDUP(表达式)13符号定义语句◎等值语句(EQU)格式:符号EQU表达式功能:将表达式的值赋给EQU左边的符号。表达式可以是常数、变量、标号、数值或地址表达式。◎等号语句格式:符号=表达式等号语句(=)与EQU语句有同样的功能,区别在于等号语句定义的符号允许重新定义,使用更加方便灵活。14例1:A

8、COSEQU1250HCOUNTEQU100BUFEQUACOS+1000HMOVCL,COUNT例2:ONE=100COUNT=100A=ONES=COUNT+100A=A+10015段定义指令※在汇编程序设计中,需要将存储器分成若干段,80486CPU访问存储器时,凭籍段寄存器对各个段进行访问。通常用段定义语句(SEGMENT/ENDS)来

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

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

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