《微机原理与接口通信》之汇编语言程序设计实验指导

《微机原理与接口通信》之汇编语言程序设计实验指导

ID:11420883

大小:1.07 MB

页数:26页

时间:2018-07-11

《微机原理与接口通信》之汇编语言程序设计实验指导_第1页
《微机原理与接口通信》之汇编语言程序设计实验指导_第2页
《微机原理与接口通信》之汇编语言程序设计实验指导_第3页
《微机原理与接口通信》之汇编语言程序设计实验指导_第4页
《微机原理与接口通信》之汇编语言程序设计实验指导_第5页
资源描述:

《《微机原理与接口通信》之汇编语言程序设计实验指导》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基础实验一、汇编过程与DEBUG调试实验一、实验目的:1.熟悉DEBUG常用命令。2.熟悉汇编指令及其寻址方式和对标志位的影响。3.学会用汇编语言设计、编写、调试和运行程序的方法。二、实验内容:1.使用文本编辑程序建立名为B.ASM的源程序文件,并输入下面程序内容,然后存盘。DATASEGMENTXDD99AABBCCHYDD55667788HZDD?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDI,OFFSETZMOVAX,WORDPT

2、RXADDAX,WORDPTRYMOV[DI],AXMOVAX,WORDPTRX[2]26ADCAX,WORDPTRY[2]MOV[DI+2],AXEXIT:MOVAX,4C00HINT21HCODEENDSENDSTART问:1)程序的功能是什么?2)数据标号X、Y、Z的地址(偏移量)分别是多少?3)程序的各条语句中源操作数和目的操作数分别是什么寻址方式?4)标号EXIT后面的2条指令有什么功能?5)在在标号地址EXIT处设置断点,在程序暂停时从相应内存单元检查Z的内容,看结果是否正确。2.编写程序,用8086指令实现双字操

3、作数X的内容循环左移N位。编程提示:1)如果要对双精度数(双字)DX:AX循环左移1位,可用如下指令段:SALAX,1;将AX内容算术左移1位,最低位补0,最高位移至进位位CFRCLDX,1;将DX内容带进位循环左移1位,原CF内容移至DX最低位,;DX最高位移至CFADCAX,0;CF内容即原DX最高位加至AX最低位2)如果要对双精度数(双字)DX:AX循环左移N位,则将上述程序段循环执行N次即可。3.编写程序,在屏幕上显示一段英文信息,如“HelloKitty!”或者你喜欢的其他一段文字。编程提示:1)要在屏幕上显示信息,

4、需先将要显示内容在数据段进行定义,将要显示的信息作为字符串放在单引号内,注意加上换行符0AH和回车符0DH,最后以地址符’$’结束。DATASEGMENT26MESSDB'HelloKitty!',0AH,0DH,'$'DATAENDS2)显示信息用DOS功能调用的9号功能。先将要显示信息的段地址送DS,偏移地址送DX。MOVAX,DATA;MOVDS,AX;MOVDX,OFFSETMESS;MOVAH,9INT21H3)为避免运行程序后死机,在程序的最后加上返回DOS的语句:EXIT:MOVAX,4C00HINT21H26基

5、础实验二、分支程序设计一、实验目的:掌握分支程序的基本设计方法。二、实验内容:1.统计学生成绩:设有10个学生成绩分别是56、69、84、82、93、74、80、99、100和63分,并保存在以GRADE为首址的单元中。试编制程序分别统计低于60分、60~69分、70~79分、80~89分、90~99分和100分的学生人数,并存放到S5、S6、S7、S8、S9和S10单元中。编程提示:本程序算法简单,在成绩分等部分采用分支结构,而统计所有学生成绩则采用循环结构。程序框图如右图:用DEBUG程序运行经汇编、连接的可执行文件,观察

6、运行结果。2.试编写一程序,根据用户输入的月份数,在屏幕上显示该月份的英文缩写名,当输入的字符不在0~0CH之间,则退出程序,返回DOS。编程提示:261)在运行程序时,为方便用户输入月份数,应首先在屏幕上给出输入月份的提示信息。因此应在代码段的开始,首先进行提示信息显示的编程。要在屏幕上显示一段字符信息,用DOS功能调用的9号功能,入口参数:AH=9,DS:DX=显示信息存放的段地址:偏移地址。需要特别指出的是:在定义显示信息时,在信息的最后,一定要加上“0AH(换行),0DH(回车),‘$’”。字符‘$’表示显示信息结束。

7、2)用跳跃表法可使程序根据不同的条件转移到多个程序分支中去。在这种方法里,对地址表的访问是根据给定的条件直接算出相应的表格地址而取得其内容的。这一思路也可用在表格查找中。因此,可在数据段建立一个月份表:MONTABDB‘JAN’DB‘FEB’DB‘MAR’……显然,‘JAN’的地址为MONTAB+0,‘FEB’的地址为MONTAB+3,也就是说,根据用户给定的月份数可算出与其相对应的表格地址是:MONTAB+(月份数-1)*3。3)等待接收一个从键盘输入的字符,用DOS功能调用的1号功能,出口参数是:AL=输入字符的ASCII

8、码。4)收到输入字符的ASCII码后,还需先将其转变成数字后才能用于查表。程序框图如右图:26基础实验三、循环程序设计一、实验目的:熟悉循环程序的设计方法,掌握循环程序的结构。二、实验内容:1.编制一个程序,把BX寄存器的内容以十六进制的形式在屏幕上显示出来。编程提示:BX是

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

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

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