微机汇编语言程序设计ppt课件.ppt

微机汇编语言程序设计ppt课件.ppt

ID:59274073

大小:1.03 MB

页数:164页

时间:2020-09-22

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

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

1、第4章8086/8088汇编语言程序设计汇编语言程序设计是开发微机系统软件的基本功,在程序设计中占有十分重要的地位。由于汇编语言具有执行速度快和易于实现对硬件的控制等独特的优点,所以至今它仍然是用户使用得较多的程序设计语言。特别是在对于程序的空间和时间要求很高的场合,以及需要直接控制设备的应用场合,汇编语言更是必不可少了。由于汇编语言本身的特点,本章将选择目前国内广泛使用的IBMPC机作为基础机型,着重讨论8086/8088汇编语言的基本语法规则和程序设计的基本方法,以掌握一般汇编语言程序设计的初步技术。4.1程序设计语言概述4.

2、28086/8088汇编语言的基本语法4.38086/8088汇编语言程序设计基本方法4.4软件调试技术目录4.1程序设计语言概述程序设计语言是专门为计算机编程所配置的语言。它们按照形式与功能的不同可分为3种,即:机器语言汇编语言高级语言目录一、机器语言(MachineLanguage)机器语言是由0、1二进制代码书写和存储的指令与数据。特点:能为机器直接识别与执行;程序所占内存空间较少。缺点:难认、难记、难编写、易出错。二、汇编语言(AssemblyLanguage)汇编语言是用指令的助记符、符号地址、标号等书写程序的语言,简称

3、符号语言。特点:易读、易写、易记。缺点:不能像机器语言那样为计算机所直接识别,也不如高级语言那样具有很好的通用性和可移植性。三、高级语言(HighLevelLanguage)高级语言是脱离具体机器(即独立于机器),面向用户的通用语言,不依赖于特定计算机的结构与指令系统。用同一种高级语言编写的源程序,一般可以在不同计算机上运行而获得同一结果。由于高级语言的通用性特点,对于高级语言程序员来说,不必熟悉计算机内部具体结构和机器指令,而只需要把主要精力放在程序结构和算法描述上面。所以,高级语言具有更广泛的领域。汇编语言程序的上机与处理过程

4、图中,椭圆表示系统软件及其操作,方框表示磁盘文件。椭圆中横线上部是系统软件的名称,横线下部是软件所作的操作。首先,用户编写汇编语言源文件;再经过汇编程序进行汇编,产生属性为OBJ的以二进制代码表示的目标程序并存盘。然后通过连接程序(LINK)把目标文件与库文件以及其他目标文件连接在一起,形成可执行文件,才能在DOS环境下在机器上执行之。4.28086/8088汇编语言的基本语法各种机器的汇编语言其语法规则不尽相同,但基本语法结构形式类似。现以8086/8088汇编语言为例加以具体讨论。目录一、8086/8088汇编源程序实例在具体

5、讨论8086/8088汇编语言的繁琐语法规则之前,下面先举一个具有完整段定义格式的汇编源程序(即MASM程序)实例,以便对汇编语言的有关规定和格式有个初步了解。例:求从1开始连续50个奇数之和,并将结果存放在名字为SUM的字存储单元中。例:求从1开始连续50个奇数之和,并将结果存放在名字为SUM的字存储单元中。DATASEGMENT;定义数据段,DATA为段名SUMDW0;由符号(叫变量名)SUM指定的内存单元类型定义为一个字,初值为0DATAENDS;定义数据段结束STACKSEGMENTSTACK;定义堆栈段,这是组合类型伪指

6、令,它规定在伪指令后须跟STACK类型名DB200DUP(0);定义堆栈段为200个字节的连续存储区,且每个字节的值为0STACKENDS;定义堆栈段结束CODESEGMENT;定义代码段ASSUMEDS:DATA,SS:STACK,CS:CODE;由ASSUM伪指令定义各段寄存器的内容START:MOVAX,DATA;将DS初始化为数据段首址MOVDS,AX的段值DATAMOVCX,50;CX置入循环计数值MOVAX,0;清AX累加器MOVBX,1;BX置常量1NEXT:ADDAX,BX;累加奇数和,计50次INCBX;求下一个

7、奇数INCBXDECCX;循环计数器作减1计数JNENEXT;未计完50次时,转至NEXT循环MOVSUM,AX;累加和送存SUM单元MOVAH,4CH;DOS功能调用语句,机器将结束本INT21H程序的运行,并返回DOS状态CODEENDS;代码段结束ENDSTART;整个程序汇编结束段汇编源程序一般由若干段组成,每个段都有一个名字(叫段名),以SEGMENT作为段的开始,以ENDS作为段的结束,这两者(伪指令)前面都要冠以相同的名字。段可以从性质上分为代码段、堆栈段、数据段和附加段4种,但代码段与堆栈段是不可少的,数据段与附加

8、段可根据需要设置。在上面这个例子中,一共定义了3个段:1个数据段1个堆栈段1个代码段NOTE每一行只有一条语句且不能超过128个字符(从MASM6.0开始可以是512个字符)但一条语句允许有后续行,最后均以回车作结束。NOTE整个源程序必须以END

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

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

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