第4章汇编语言程序设计知识

第4章汇编语言程序设计知识

ID:5326956

大小:314.55 KB

页数:73页

时间:2017-12-08

第4章汇编语言程序设计知识_第1页
第4章汇编语言程序设计知识_第2页
第4章汇编语言程序设计知识_第3页
第4章汇编语言程序设计知识_第4页
第4章汇编语言程序设计知识_第5页
资源描述:

《第4章汇编语言程序设计知识》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第四章汇编语言程序设计及知识§4.1编程的步骤、方法和技巧§4.2汇编语言源程序的编辑和汇编§4.1编程的步骤、方法和技巧§4.1.1编程的步骤§4.1.2编程的方法和技巧§4.1.3汇编语言程序的基本结构§4.1.1编程的步骤一、分析问题二、确定算法三、画程序流程图四、编写程序一、分析问题对需要解决的问题进行分析,以求对问题由正确的理解。如,解决问题的任务是什么?工作过程?现有的条件,已知数据,对运算的精度和速度方面的要求?设计的硬件结构是否方便编程?二、确定算法算法是如何将实际问题转化成程序模块来处理。在编程以前,先要对几种不同的算法进行分析、比较,找出最适宜的算

2、法三、画程序流程图程序流程图是使用各种图形、符号、有向线段等来说明程序设计过程的一种直观的表示。流程图步骤分得越细致,编写程序是也越方便。画流程图是程序结构设计是采用的一种重要手段。一个系统软件有总的流程图(主程序框图)和局部的流程图。流程图常采用的图形和符号。椭圆框或桶形框:表示程序的开始或结束。矩形框:表示要进行的工作。:表示要判断的事情,菱形框内菱形框的表达式表示要判断的内容。圆圈:表示连接点指向线:表示程序的流向四、编写程序用89C51汇编语言编写的源程序行(一条语句)包括四个部分,也叫四个字段:〔标号:〕〔操作码〕〔操作数〕;〔注释〕每个字段之间要用分隔符分隔,而每

3、个字段内部不能使用分隔符。可以用作分隔符的符号:空格“”、冒号“:”、、逗号“,”、分号“;”等。例:LOOP:MOVA,#00H;立即数00H→A标号标号是用户定义的符号地址。一条指令的标号是该条指令的符号名字,标号的值是汇编这条指令时指令的地址。标号由以英文字母开始的1~8个字母或数字组成,以冒号“:”结尾。标号可以由赋值伪指令赋值,如果没有赋值,汇编程序把存放该指令目标码第一字节的存储单元的地址赋给该标号,所以,标号又叫指令标号。操作码操作码是必不可少的。它用一组字母符号表示指令的操作码。在89C51中,由89C51的指令助记符组成。操作数汇编语言指令可能要求或不要求操

4、作数,所以这一字段可能有也可能没有。若有两个操作数,操作数之间用逗号“,”分开。操作数包括的内容有:(1)工作寄存器:由PSW.3和PSW.4规定的当前工作寄存器区中的R0~R7。(2)特殊功能寄存器:21个SFR的名字。(3)标号名:赋值标号—由汇编指令EQU等赋值的标号;指令标号—指令标号指示的指令的第一字节地址是该标号的值。(4)常数:可用二进制(B)、十进制、十六进制(H),若常数以字符开头,前面加0。(5)$:用来表示程序计数器的当前值。(6)表达式:汇编时,计算出表达式的值填入目标码。注释注释部分不是汇编语言的功能部分,只是用语增加程序的可读性。良好的注释是

5、汇编语言程序编写中的重要组成部分。§4.1.2编程的方法和技巧一、模块化的程序设计方法二、编程技巧一、模块化的程序设计方法1、程序功能模块化的优点2、划分模块的原则1、程序功能模块化的优点单个模块结构的程序功能单一,易于编写、调试和修改。便于分工,从而可使多个程序员同时进行程序的编写和调试工作,加快软件研制进度。程序可读性好,便于功能扩充和版本升级。对程序的修改可局部进行,其它部分可以保持不变。对于使用频繁的子程序可以建立子程序库,便于多个模块调用。2、划分模块的原则每个模块应具有独立的功能,能产生一个明确的结果,即单模块的功能高内聚性。模块之间的控制耦合应尽量简单,数据耦合

6、应尽量少,即模块间的低耦合性。控制耦合是指模块进入和退出的条件及方式,数据耦合是指模块间的信息交换方式、交换量的多少及交换频繁程度。模块长度适中。20条~100条的范围较合适。二、编程技巧1、尽量采用循环结构和子程序。2、尽量少用无条件转移指令。3、对于通用的子程序,考虑到其通用性,除了用于存放子程序入口参数的寄存器外,子程序中用到的其他寄存器的内容应压入堆栈(返回前再弹出),即保护现场。4、在中断处理程序中,除了要保护处理程序中用到的寄存器外,还要保护标志寄存器。5、用累加器传递入口参数或返回参数比较方便,在子程序中,一般不必把累加器内容压入堆栈。§4.1.3汇编语言程序的基本结构一、

7、顺序程序二、分支程序三、循环程序开始开始开始初始化循环初始化初始化处理1循环处理处理1N处理2循环控制条件满足?条件满YN处理3条件满足?处理2处理3Y处理4循环结束处理4结束结束结束顺序程序流程图循环程序流程图分支程序流程图一、顺序程序顺序程序是最简单的程序结构,即顺序结构。程序按顺序一条一条地执行指令。顺序程序设计实例【例1】有一个16位二进制负数的补码存放在片内RAM30H、31H单元内,求它的原码的绝对值并将

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

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

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