汇编语言程序设计基本程序设计ppt课件.ppt

汇编语言程序设计基本程序设计ppt课件.ppt

ID:58756038

大小:675.50 KB

页数:181页

时间:2020-10-03

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

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

1、本章概述本章主要介绍汇编语言程序设计的基本方法。教学目标熟练掌握微型机的汇编语言程序设计的基本方法。学习内容■简单程序设计■分支程序设计■循环程序设计■子程序设计第九章基本程序设计一、简单程序(顺序程序)设计1.简单程序的结构例如:将VAR1、VAR2和VAR3三个连续单元的内容相加,结果存入RESULT单元中。SSEGSEGMENTPARASTACK‘STACK’DB128DUP(?)SSEGENDSDSEGSEGMENTPARAPUBLIC‘DATA’VAR1DB?;保存第一个数VAR2DB?;保存第二个数VAR3DB?;保存第三个数RES

2、ULTDB?;保存运算结果DSEGENDSCODESEGMENTPARAPUBLIC‘CODE’ASSUMECS:CODE,DS:DSEG,SS:SSEGMAINPROCFARPUSHDSXORAX,0PUSHAXMOVAX,DSEGMOVDS,AXMOVBX,OFFSETVAR1;设地址指针MOVAL,[BX];取第一个数送AL寄存器INCBX;修改地址指针ADDAL,[BX];加入第二个数INCBX;修改地址指针ADDAL,[BX];加入第三个数INCBX;修改地址指针MOV[BX],AL;保存结果RETMAINENDPCODEENDSEN

3、DMAIN;简单程序设计首先是要学会选择适当的指令构建程序。构建一个程序可选择的指令很多,只要正确就行。初学者在程序模版的基础上,更改主要指令就可以了。上例中有8六条指令是直接与题目要求有关的:MOVBX,OFFSETVAR1MOVAL,[BX]INCBXADDAL,[BX]INCBXADDAL,[BX]INCBXMOV[BX],AL例如:将DATA1中的字节数据拆开,分别存于DATA1和DATA2单元中。假设设DATA1单元中的数为:A6H,程序操作结果为:DATA2内容变成0AHDATA3内容变成06HSSEGSEGMENTSTACKDB2

4、56DUP(’‘)SSEGENDSDSEGSEGMENTDATA1DB0A6HDATA2DB?DATA3DB?DSEGENDSCSEGSEGMENTASSUMECS:CSEG,DS:DSEG,SS:SSEG1STARTPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,DSEGMOVDS,AXMOVAL,DATA1;取数A6HSHRAL,1;SHRAL,1;SHRAL,1;SHRAL,1;右移4位MOVDATA2,AL;存第一个结果MOVAL,DATA1;取数A6HANDAL,0FH;形成第二个数MOVDATA3,AL;保存RETS

5、TARTENDPCSEGENDSENDSTART2.查表程序设计例如设在内存中有一个阶乘表(0!~7!),DATA单元中有一个已知数X(设该数范围为0~7).查表求该数的阶乘值x!。STACK1SEGMENTSTACKDB256DUP(‘’)STACK1ENDSDATA1SEGMENTTABLEDW1,1,2,6,24,120DW720,5040;阶乘表RESULTDW?;保存结果X!DATADB?;存已知数XDATA1ENDSDATA数X1126241207205040TABLE+0TABLE+2TABLE+4TABLE+14用DB定义阶乘表

6、,可否?CSEGSEGMENTASSUMECS:CSEG,DS:DATA1,SS:STACK1BEGINPROCFARPUSHDSMOVAX,0PUSHAXMOVAX,MOVDS,AXMOVBH,0MOVBL,DATALEASI,TABLEMOVAX,[SI][BX]MOVRETBEGINENDPCSEGENDSENDBEGINDATA1ADDBX,BXRESULT,AX3.汇编语言程序输入输出的实现每一个最简单的程序都有基本的输入输出能力。一般,汇编语言程序的输入输出操作是通过对操作系统的子程序调用实现的。在DOS操作系统中,提供了功能丰富的

7、子程序,包括输入输出管理、内存管理、文件操作、磁盘读写控制等,DOS操作系统将它们称为系统功能调。DOS系统功能调用中的子功能有上百个,每一个子功能的具体作用、入口参数、出口参数都可通过查表获得。应用程序通过系统功能调用,能方便地完成输入输出操作。在汇编语言程序中,利用中断指令INT21H实现对操作系统系统功能调用中的子功能的调用。这里先介绍其中几个最常用的子功能。1>单个字符输入子功能(1号子功能)P这个子功能完成从键盘输入一个字符,将所输入字符的ASCII码送AL寄存器中,同时在显示器上显示这个字符。程序中的具体操作如下:(1)子功能号1送

8、入AH寄存器中;(2)执行INT21H指令,调用此子功能,系统等待键盘输入,如果输入了一个字符,结果可以在AL寄存器中得到输入字符的ASCII码。MO

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

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

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