汇编语言程序设计(I)

汇编语言程序设计(I)

ID:40610203

大小:782.10 KB

页数:50页

时间:2019-08-05

汇编语言程序设计(I)_第1页
汇编语言程序设计(I)_第2页
汇编语言程序设计(I)_第3页
汇编语言程序设计(I)_第4页
汇编语言程序设计(I)_第5页
资源描述:

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

1、第四章汇编语言程序设计4.1概述4.2简单程序4.3分支程序4.4循环程序4.5查表程序4.6子程序的设计及调用4.7程序设计举例4.1概述:编程的步骤、方法和技巧编程步骤分析问题确定算法:对不同的算法进行分析、比校,找出最适宜的算法。画程序流程图编写程序程序流程图椭圆框(○)或者桶形框()表示程序的开始或结束矩形框(□)表示要进行的工作菱形框(◇)表示要判断的事情,菱形框内的表达式表示要判断的内容圆圈(○)表示连接点指向线(→)表示程序的流向流程图步骤分得越细致,编写程序时也就越方便程序编写汇编语言的标准格式:[标号:][操作码][操作数];[注释]例如:

2、LOOP1:MOVA,#00H程序编写——操作数字段1.工作寄存器名2.特殊功能寄存器名3.标号名4.常数:二进制(#01010101B)十进制(#67D)十六进制(#0EFH)程序编写——操作数字段5.$:表示程序计数器的当前值,常出现在转移指令中如:JNBTF0,$6.表达式:如MOVA,SUM+1编程的方法和技巧模块化的程序设计方法编程技巧:尽量采用循环结构和子程序。减少程序总容量,提高程序的效率,节省内存。尽量少用无条件转移指令。使程序条理更加清楚,从而减少锗误。子程序中,除用于存放子程序入口参数的寄存器外,子程序中用到的其他寄存器的内容应压入堆栈(

3、返回前再弹出)保护现场。一般不必把标志寄存器压入堆栈。伪指令伪指令仅在汇编过程中起控制作用,不产生可执行的目标代码,又称为软指令。1、起点指令ORG格式:ORG××××H功能:给程序起始地址或数据块的起始地址赋值。例:用法:一般出现在每段源程序或数据块的开始。一个源程序可多次出现ORG指令。ORG8000HSTART:MOVA,#74H┇;源程序的起始地址为8000H2、结束命令END格式:END功能:汇编程序结束标志附在一个源程序的结尾。一个源程序只能出现一次END指令。3、定义字节命令DB格式:功能:标号:DB字节常数或字符串(8位)定义字节的内容,汇编

4、程序把DB定义的字节依次存入标号开始的存储单元。用法:有定义的内存单元地址项或项表伪指令4、定义字命令DW格式:功能:标号:DW字或字表定义若干个字(双字节)例:ORG8000HTAB:DW7234H,8AH,10(8000H)=72H(8001H)=34H(8002H)=00H(8003H)=8AH(8005H)=0AH汇编后:(8004H)=00H伪指令5、定义空间命令DS格式:功能:标号:DS数据或字符及表达式例:(8008H)=30H(8009H)=8AH从指定单元地址开始,由数据或字符及表达式的值来定义应保留的单元数,备用。ORG8000HDS08

5、HDB30H,8AH即:8000H~8007H单元保留备用伪指令6、等值命令EQU格式:字符名称EQU数据或汇编符号功能:将一个数据或汇编符号赋予标号段规定的字符名称。例:ORG8000HAAEQUR6MOVA,AA;AA与R6等值;A(R6)伪指令例:A10EQU10DELYEQU07EBHMOVA,A10LCALLDELY;A10=10;DELY=07EBH;转向入口地址07EBH使用EQU指令,须先赋值后使用,不能反之。伪指令7、数据地址赋值等值命令DATA格式:字符名称DATA数据或表达式功能:此命令把数据/代码地址赋予标号段所规定的字符名称。定义的

6、字符名称可先使用后定义。INDEXJDATA8389HORG8000HINDEXJDATA8096HLJMPINDEXJENDORG8000HLJMP8096HEND;INDEXJ这个字符名称的地址为8389H例:等价于伪指令EQU与DATA的区别(1)DATA与EQU相似,但DATA定义的字符名称,可先使用后定义,EQU则不能。(2)EQU指令可把汇编符号赋给字符名称,DATA则不能。(3)DATA可把表达式的值赋给字符名称,EQU则不能。DATA常在程序中定义数据地址。EQU常在程序中定义字符数据。伪指令8、位地址符号命令BIT格式:字符名称BIT位地址

7、功能:把位地址赋予标号段的字符名称A1BITP1.0A2BITP2.0例:;P1.0、P2.0赋予位地址字符名称A1、A2,;在编程时可以直接把A1、A2当成位地址使用。伪指令汇编程序的操作分两次扫描(汇编)第一次扫描(汇编)检查语法结构,对源程序中的符号、表达式、标号进行定义,处理伪指令,建立符号表。显示ERROR,并提示行号显示ERROR,并提示行号修改!修改!第二次扫描(汇编)汇编成目标代码和汇编程序清单可执行的代码(机器码)伪指令汇编语言程序的基本结构顺序结构——简单程序分支结构:单分支和多分支结构循环结构查表程序子程序结构①程序的执行时间②程序所占

8、用的内存字节数目③程序的逻辑性、可读性④程序的兼容性

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

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

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