第四章 汇编语言程序设计.ppt

第四章 汇编语言程序设计.ppt

ID:48146840

大小:1012.00 KB

页数:114页

时间:2020-01-17

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

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

1、第4章汇编语言程序设计1主要内容汇编语言源程序的结构汇编语言语句格式伪指令功能调用汇编语言程序设计24.1汇编语言源程序计算机设计语言机器语言汇编语言高级语言面向机器的语言,低级语言机器语言汇编语言高级语言3机器语言:用二进制来表示指令和数据的语言,是计算机硬件系统唯一能够直接理解和执行的语言,具有执行速度快、占用内存少等优点。汇编语言:用指令助记符、符号地址标号和伪指令等来书写的程序。汇编语言源程序:用汇编语言编写的程序。汇编:将汇编语言源程序翻译成能够在计算机上执行的机器语言(称为目标代码),该翻译过程称为汇编。汇编程序:完成汇编过程的系统程序。4汇编语言是利用指令的

2、助记符、符号地址、标号来编写的语言,它是机器语言的符号表示,是低级语言。汇编语言是面向机器的,是和机器的硬件密切相关的。汇编语言编写的程序效率高,节省内存,运算速度快。5编辑汇编语言源程序文件目标文件汇编连接可执行文件MASMLINK执行A.ASMA.OBJA.EXE伪指令指令汇编语言源程序与汇编程序6汇编语言源程序汇编程序用助记符编写汇编程序汇编语言源程序机器语言目标程序源程序的编译程序7汇编语言程序设计与执行过程输入汇编语言源程序(EDIT)汇编(MASM)链接(LINK)调试(TD)源文件.ASM目标文件.OBJ可执行文件.EXE最终程序84.1.1汇编语言源程序结

3、构完整的汇编语言源程序通常由若干个逻辑段组成,包括数据段、附加段、堆栈段和代码段,它们分别映射到存储器中的物理端上。每个逻辑段以SEGMENT开始,以ENDS语句结束,整个源程序用END语句结尾。代码段存放源程序的所有指令码。数据、变量等房子数据段和附加段。一个源程序可以有多个代码段,也可以由多个数据段、附加段及堆栈段。一个源程序模块只能有一个代码段、一个数据段、一个附加段和一个堆栈段。程序分段的目的是为了在程序汇编后,能将指令码和数据分别装入存储器的相应物理段中。9数据段名SEGMENT…数据段名ENDS附加段名SEGMENT…附加段名ENDS堆栈段名SEGMENT…堆

4、栈段名ENDS代码段名SEGMENT…代码段名ENDSEND101.汇编语言语句类型指令性语句指示性语句CPU执行的语句,能够生成目标代码CPU不执行,而由汇编程序执行的语句,不生成目标代码(伪指令)4.1.2汇编语言语句类型及格式11指令和伪指令指令——使CPU产生动作、并在程序执行时才处理的语句,生成目标码。伪指令——不产生CPU动作、在程序执行前由汇编程序处理的说明性语句,例如,数据说明、变量定义等等,不生成目标码。12伪指令语句与指令性语句的区别伪指令与指令性语句的最大区别是:首先伪指令语句经汇编后不产生任何机器代码,而指令性语句经汇编后会产生相应的机器代码;其次

5、伪指令语句所指示的操作是在程序汇编时就完成了的,而指令性语句的操作必须在程序运行时才能完成。132.汇编语言语句格式[标号:][前缀]操作码[操作数[,操作数]][;注释]指令的符号地址标号后要有冒号操作码注释前加分号指令性语句:14指示性语句格式[名字]伪指令操作数[,操作数,…][;注释]变量的符号地址其后不加冒号指示性语句中至少有一个操作数151.标号、名字标号表示指令的符号地址,其后有冒号,标号在指令性语句前。名字通常表示变量名、段名和过程名等,多数情况下用来表示吃存储器中的一个数据区的地址。名字后不加冒号,在指示性语句前。组成:由英文字母、数字及专用字符组成,最

6、大长度不能超过31个,且不能由数字打头,不能用保留字(如寄存器名,指令助记符,伪指令)。162.操作码指令码伪指令助记符指示汇编程序要完成的操作作用:定义变量分配存储单元指示程序开始和结束等命令CPU要完成的操作173.注释用分号作为注释的开始用于说明程序或语句的功能,以便于阅读和理解必要时,一个语句行也可以由分号开始作为阶段性注释。汇编程序在翻译源程序时将跳过该部分,不对它们做任何处理。184.数据项及表达式寄存器存储器单元常量变量或标号表达式指令的操作数可以是立即数、寄存器和存储单元。伪指令的参数可以是常数、变量名、表达式等,可以有多个,参数之间用逗号分隔。19常量数

7、字常量十进制常量二进制常量十六进制常量字符串常量用单引号引起的字符或字符串例:‘A’MOVAL,’A’例:’ABCD’汇编时被译成对应的ASCII码41H,42H,43H,44H20标号标号:代表存放一条指令的存储单元的符号地址,其后需加冒号(指令性语句)。作用:标号可作为转移、过程调用及循环控制等指令的操作数。三种属性段值属性:标号所在段的段地址。偏移量属性:偏移地址(16位)类型属性:近标号(只能段内被引用,2字节)远标号(可在其他段被引用,4字节)21变量变量的属性:段值:变量所在段的段地址偏移量:变量单元地址与段首地址

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

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

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