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

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

ID:58701832

大小:1.19 MB

页数:121页

时间:2020-10-04

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

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

1、第3章汇编语言程序设计3.1概述3.2汇编语言源程序的格式3.3伪操作命令3.4DOS和BIOS调用3.5汇编语言程序设计举例1三种层次的计算机语言:机器语言:用二进制数表示指令和数据,计算机可直接理解和执行,速度快,占用内存少,但不直观,不宜理解和记忆。汇编语言:用助记符来书写指令,地址、数据也可用符号表示,执行速度快,编写、阅读和修改比较方便,需要汇编成机器语言。高级语言:不针对某个具体的计算机,通用性强。不需要了解计算机内部的结构和原理,易读、易编,需要编译成机器语言。3.1概述2汇编语言:一种采用助记符表示的程序设计语言,即用指令助记符表示指令的操作码和操作数,用

2、符号或标号表示地址、常量或变量,与机器代码相对应。汇编语言源程序:用汇编语言编写的程序。宏汇编程序MASM.EXE功能:检查源程序中语法的正确性,将汇编语源程序翻译成由机器代码组成的目标程序。汇编语言源程序目标程序汇编程序MOVAX,100H→B800013汇编语言上机环境4例:有两个5字节数3B74AC60F8H、20D59E36C1H分别放在自DATA1和DATA2开始的存储区中,低字节在低地址处,编一程序段将两数相加,结果存放于从DATA1开始的单元中。MOVCX,5;循环次数MOVSI,0;偏移值CLC;CF=0LPER:MOVAL,DATA2[SI]ADCDAT

3、A1[SI],ALINCSIDECCXJNZLPER….3.2汇编语言源程序的格式5汇编语言源程序的格式DATASEGMENT;定义出必要的数据,以及数据存放空间DATA1DB0F8H,60H,0ACH,74H,3BH;被加数DATA2DB0C1H,36H,9EH,0D5H,20H;加数DATAENDSCODESEGMENT;定义代码段ASSUMECS:CODE,DS:DATASTART:MOVAX,DATA;指令序列,构成代码段MOVDS,AX;初始化DSMOVCX,5;循环次数MOVSI,0;偏移值CLC;CF=0LPER:MOVAL,DATA2[SI]ADCDATA

4、1[SI],ALINCSIDECCXJNZLPERMOVAH,4CHINT21H;返回DOSCODEENDSENDSTART6汇编语言的两种基本语句(1)指令性语句也称可执行性语句,表示为CPU指令系统中各种用助记符表示的机器指令。这些指令在汇编过程中最终转换为目标程序的机器代码,在运行该程序时被执行。例MOVAX,100H→B80001(2)指示性语句(伪指令语句)指示汇编程序进行汇编的操作,例如用来定义变量,分配存储单元,指示程序开始和结束等。这些指令在汇编过程中被执行,指示相应的汇编操作,其自身并不产生任何目标代码。如伪指令。一个程序经汇编、连接和装入内存后,在执行

5、程序之前,指示性语句的功能已经完成,故又称伪操作;而指令性语句的功能尚未完成,需控制CPU去执行,才能完成。7汇编语言语句组成[名字]操作码/伪操作[操作数][;注释]分为4部分,各部分之间至少要用一个空格作为间隔。操作码是一个助记符,它可以是指令、伪指令(又叫伪操作)或宏指令。操作数由寄存器、存储单元、数据项或其表达式构成。汇编时一个表达式得到一个值。注释用来说明程序或语句的功能,用分号;作为注释开始。其中名字和注释视情况而定,可有可无。LP:ADDAL,[SI];AL+[SI]→AL…JNZLPLP1:REPMOVSBINCALADDAL,BL8⒊2.3名字(标号或变

6、量)名字是由程序员建立起来的有特定意义的字符系列,由英文字母、数字及专用字符组成,最大长度不能超过31个,且不能由数字打头,不能用保留字(如寄存器名,指令助记符,伪指令)。1)标号符号地址,表示一条指令所在的地址,常用作转移指令(包含子程序调用指令)的操作数,即目标地址。9标号的三个属性:(1)段属性(SEGMENT):表示标号所在段的段地址(2)偏移属性(OFFSET):表示标号的偏移地址(3)距离属性(类型属性TYPE):表示标号作为段内或段间的转移属性距离属性分为两种:NEAR(近):表示本标号只能被标号所在段内的转移和调用指令访问(即段内转移)。FAR(远):表示

7、本标号可以被其他段(不是标号所在段)的转移和调用指令访问(即段间转移)。102)变量名、段名、过程名变量——通常是存放在某些存储单元的数据,这些数据在程序运行期间可以修改。变量的三个属性:(1)段属性(SEGMENT):表示变量所在段的段地址,常常放在DS或ES寄存器中。(2)偏移属性(OFFSET):表示变量的偏移地址(3)类型属性(TYPE):表示变量占用存储单元的字节数。类型:字节,字,双字,四字,十字节类型,变量名——表示数据在段中的有效地址,由用户指定。变量名是可选的,如果使用变量名,它代表数据区中第一个数据项的地址

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

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

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