微机实验报告--KEIL的使用与汇编语言上机操作

微机实验报告--KEIL的使用与汇编语言上机操作

ID:25243010

大小:715.00 KB

页数:10页

时间:2018-11-19

微机实验报告--KEIL的使用与汇编语言上机操作_第1页
微机实验报告--KEIL的使用与汇编语言上机操作_第2页
微机实验报告--KEIL的使用与汇编语言上机操作_第3页
微机实验报告--KEIL的使用与汇编语言上机操作_第4页
微机实验报告--KEIL的使用与汇编语言上机操作_第5页
资源描述:

《微机实验报告--KEIL的使用与汇编语言上机操作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.实验名称Keil的使用与汇编语言上机操作成绩指导教师专业班级姓名学号联系电话一、任务要求二、设计思路三、资源分配四、流程图五、源代码(含文件头说明、语句行注释)六、程序测试方法与结果思考题本人承诺:本报告内容真实,无伪造数据,无抄袭他人成果。本人完全了解学校相关规定,如若违反,愿意承担其后果。签字:2016年10月11日....Keil的使用与汇编语言上机操作一、任务要求编写多个十六位数的加法程序,有4个十六位无符号数,连续存放在20H开始的片上数据区中,低八位先存,高八位在后。要求:和存于R3(高八位)和R2(低八

2、位),进位位存于R4。二、设计思路1.先将20H21H和22H23H的两个16位数相加。用R0,R1存储被加的两个数的地址,低位相加之后,结果保存在R2,将R0,R1存储的地址自加1,进行高位相加,结果保存在R3。完成一次两个16位数的相加之后,低位相加结果存储在18H,高位结果存储在19H,进位保存在R42.R0改为18H,R1改为24H,将第一次的结果再和第三个数相加,若有进位,R4加13.R0改为18H,R1改为26H,将第二次的结果再和第四个数相加,若有进位,R4加14.最后R2储存的是低八位,R3保存的高八位

3、,R4保存的总进位三、资源分配20H--27H保存四个16位数R2保存每次加法的低8位R3保存每次加法的高8位R0R1每次加法运算的两个数的地址R4保存进位结果19H18H两个16位数之后的数高低位的保存地址A中间运算....四、流程图五、源代码Filename:jiafa.asmORG0000HMOV27H,#25HMOV26H,#25HMOV25H,#25HMOV24H,#0E5HMOV23H,#0F5HMOV22H,#25HMOV21H,#25HMOV20H,#0F5H;赋值CLRC....MOVR2,#00H;

4、暂存每次加法的低位结果MOVR3,#00H;暂存每次加法的高位结果MOVR4,#00H;记录4个16位数相加的进位MOVR0,#20H;第一次相加MOVR1,#22HMOVA,@R0ADDA,@R1MOVR2,A;低位相加和保存到R2INCR0INCR1;地址加1,进行高位相加MOVA,@R0ADDCA,@R1MOVR3,A;高位相加和保存到R3JNCJINW1;如果有进位,R4加1MOVA,R4ADDA,#01HMOVR4,AJINW1:CLRC;将第一次相加的结果与第三个数相加MOV18H,R2;保存每次运算后的低

5、位结果在18HMOV19H,R3;保存每次运算后的高位结果在19HMOVR0,#18H;将结果和新的数相加MOVR1,#24H;新数的地址MOVA,@R0ADDA,@R1MOVR2,AINCR0INCR1MOVA,@R0....ADDCA,@R1MOVR3,AJNCJINW2MOVA,R4ADDA,#01HMOVR4,AJINW2:CLRC;将第二次相加的结果与第四个数相加MOV18H,R2MOV19H,R3MOVR0,#18HMOVR1,#26HMOVA,@R0ADDA,@R1MOVR2,AINCR0INCR1MOV

6、A,@R0ADDCA,@R1MOVR3,AJNCJINW3MOVA,R4ADDA,#01HMOVR4,AJINW3:SJMP$END六、程序测试方法与结果1.字节拆分、合并程序的调试:....第一步:拆分为两个数第二步:转换为ASCII码第三步:取出两个ASCII码并合并....2.数据块填充程序调试:第一步:从7000H开始赋值,每赋值一次,R0加1记录次数,A也加1第二步:R0加到00H,结束循环赋值....总共运行256次3.四个16位数的相加四个数分别为25F5H,F525H,25E5H,2525H观察每次相加

7、之后各个寄存器的值,进位的值,25F5H与F525H相加,应该是11B1AH19H18H处分别是1B1A,R4保存的进位为111B1AH与25E5相加,结果应该是140FFH....140FFH与2525H相加,结果应该是16624H测试之后的结果为16624H,R4保存进位位,高低8位分别保存在R3,R2七、思考题1.在调试时,Registers窗口中可以查看Regs和Sys,分别是工作寄存器和SFRVIEW-MEMORYWINDOWS-MEMORY1/2/3/4,查看片内RAM,输入D:18H格式的语句,查看片外R

8、AM,输入X:3000H格式的语句,查看程序代码,输入C:0100H格式的语句Disassembly窗口可查看各程序指令存放的程序地址,在运用PC查表时可以用到,也可以查看指令的长度2.字节拆分、合并:(使用ADD指令)MOV30H,#49H....MOVA,30HANLA,#0FH;取出低位ADDA,#30H;变成ASCII码M

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

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

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