微机原理与接口技术 第4章 汇编语言程序设计.ppt

微机原理与接口技术 第4章 汇编语言程序设计.ppt

ID:49281878

大小:370.00 KB

页数:47页

时间:2020-02-03

微机原理与接口技术 第4章 汇编语言程序设计.ppt_第1页
微机原理与接口技术 第4章 汇编语言程序设计.ppt_第2页
微机原理与接口技术 第4章 汇编语言程序设计.ppt_第3页
微机原理与接口技术 第4章 汇编语言程序设计.ppt_第4页
微机原理与接口技术 第4章 汇编语言程序设计.ppt_第5页
资源描述:

《微机原理与接口技术 第4章 汇编语言程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第4章汇编语言程序设计4.1伪指令4.2汇编语言的上机过程4.3系统功能调用4.4汇编语言程序设计4.5汇编语言和C/C++混合编程4.1伪指令汇编源程序:按严格的语法规则用汇编语言编写的程序,称为汇编语言源程序,简称为汇编源程序或源程序。汇编程序:为计算机配置的负责把汇编源程序翻译成目标程序的一种系统软件。汇编(过程):将汇编源程序翻译成一一对应的机器码目标程序的过程称为汇编过程或简称汇编。4.1.1表达式表达式:是由常量、变量及运算符组成的有意义的式子。常数:没有任何属性的纯数值。在程序运行中不发生变化。如

2、:10010011B、0A5H、”ZHIFUCHUAN”、5.213E-4变量:表示存储单元,单元中的数在程序运行期间随时可以修改。变量名:存放数据单元的符号地址标号:表示存储单元,单元中存放的是机器指令代码①段属性(SEG):变量或标号对应存储单元所在段的段值②偏移量属性(OFFSET):变量或标号对应存储单元的起始地址的段内偏移③类型属性(TYPE):变量类型主要是字节(BYTE)、字(WORD)、双字(DWORD)标号类型主要是近(NEAR)和远(FAR)变量、标号存储单元⑴算术运算符+、-、*、/、MO

3、D(除法取余)、SHL(左移)、SHR(右移)例:MOVAX,100*4+5;AX=405⑵逻辑运算符:AND、OR、NOT、XOR例:24HOR0FH=2FH按位运算⑶关系运算:EQ、NE、LT、LE、GT、GE例:MOVAX,1234HGT1024H关系运算结果总是一个数值。若关系不成立,则结果为0,若关系成立,则结果为0FFFFHMOVAX,0FFFFH1.算术运算符、逻辑运算符和关系运算符(1)SEG(计算段基址)例2:把VARW的偏移地址送BXMOVBX,OFFSETVARW例3:假设VARW变量是字

4、变量,把VARW的类型值送ALMOVAL,TYPEVARW;AL=2例1:把VARW所在段的段值送AXMOVAX,SEGVARW变量名2.分析运算符SEG、OFFSET、TYPE、SIZE和LENGTH(3)TYPE(计算符号类型值)(2)OFFSET(计算偏移地址)3.组合运算符(属性操作符)(1)定义符号名为新类型PTR格式:<类型>PTR<符号名>功能:用于指定或临时改变变量或标号的类型例:MOVWORDPTR[SI],1;指明字类型(2)指定新类型THIS格式:THIS<类型>功能:为某个符号名建立新类

5、型例:LABCEQUTHISBYTEMOVLABC,AL4.1.2伪指令⑴字节定义语句DB格式:[变量名]DB<初值表>功能:初值表中的每一项占一个字节,它们从变量名(符号地址)开始按字节连续存放。例:COUNTDB100DB0DH,0AH,’$’VARWDB?,6,?,?低0A24×06××0D64COUNT→VARW→高可以使用重复操作符DUP如:BUFFERDB8DUP(0)符号地址DUP可以嵌套如:ARRAYDB100DUP(0,2DUP(1,2),3)1.数据定义(变量定义)⑵字定义语句DW格式:[变

6、量名]DW<初值表>功能:初值表中的每一项占一个字单元,它们从变量名(符号地址)开始按字连续存放。例:FLAGDW2FCDH,24HDW?2400××2FCDFLAG→低高汇编后对应的存储区域分配情况⑶四字节定义语句DD格式:[名字]DD<初值表>功能:初值表中的每一项占四个字节数,它们从符号地址开始按四字节从小地址连续存放。格式:[名字]DQ<表达式或数据项表>功能:初值表中的每一项占八个字节数,它们从符号地址开始按八字节从小地址连续存放。⑷八字节定义语句DQ⑸10字节定义指令DT2.符号常量定义伪指令EQU

7、、格式:<常量名>EQU<表达式>功能:将表达式的值赋给符号常量⑴等价语句EQU表达式可以是常数、数值表达式、字符串、存储器符号等例:COUNTEQU100;符号COUNT代表常数100BUFFEQU4*COUNT;BUFF代表400HELLOEQU“Howareyou!”;HELLO代表HowareyouVARWEQUTHISWORD;变量VARW的类型是字注意:等价语句的符号常量名不能被重新赋值⑵等号语句=格式:<符号常量名>=<表达式>功能:将表达式的数值赋给符号常量数值表达式例:ABCD=100YY=

8、20+300/4ABCD=2*ABCD+1可以重新赋值3.段定义伪指令segment和ends段定义的一般格式:<段名>SEGMENT[定位方式][连接方式][‘类型名’]…<段名>ENDS段开始语句段结束语句例:一个简单的数据段DSEGSEGMENTBUFFERDB8DUP(0)DSEGENDS开始的段名与结束的段名必须相同,段的长度不能超过64KB,SEGMENT后面的参数是可选的

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

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

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