当前位置: 首页 > 其他范文 > 其他范文

微机实验报告模版

作者:星@星 | 发布时间:2020-12-24 06:23:13 收藏本文 下载本文

实验名称 实验一 Keil 的使用与汇编语言上机操作 指导教师 陶雄飞 专业班级 电子 1301 班 姓名 关曜东 学号 U201313816 联系电话 *** 一、任务要求 1.掌握 Keil 环境的使用 1)字节拆分、合并:调试 1.1.asm 程序,观察相关寄存器和单元的内容。

2)数据块填充:调试 1.2.asm 程序,观察相关寄存器和单元的内容。

2.编写两个十六位数的加法程序。

有两个十六位无符号数,分别存放在从 20H 和 30H 开始的数据区中,低八位先存,高八位在后,和存于 R3(高八位)和 R4(低八位),进位位存于 R2。

二、设计思路 1、任务 1 的代码已给出,所做的是运行程序,观察寄存器和相关单元的内容,用截图来反应结果。

(1)

(2)

2、任务 2 1)、第一个十六位数低八位存在 20H,高八位存在 21H,第二个十六位数低八位存在 30H,高八位存在 31H 2)、将 20H 中的数移到 A 寄存器,与 30H 中的数相加,结果存在 R4 3)、将 21H 的数移到 A 寄存器,与 31H 的数以及 PSW 中的进位 C 相加,结果存在 R3 4)、将寄存器 A 置零,用 ADDC 指令令其与 00H 相加,结果存于 R2,即为进位 三、资源分配 任务 2 中,两个十六位无符号数,分别存放在从 20H 和 30H 开始的数据区中;和存于 R3(高 4 八位)和 R4(低八位),进位位存于 R2 中 四、流程图

赋值于指定数据区低四位求和,结果存于R4高四位与低四位进位求和,结果存于R3将进位存于R2结束开始

五、源代码(含文件头说明、语句行注释)任务 1:

字节拆分、合并程序 File name: e421.asm Description: 1 字节 BCD 码转换为 2 字节 ASCII 2 字节 ASCII 码转化为 1 字节 BCD 码 Date: Designed by: Source used: 30H: BCD data 31H, 32H:ASCII data 31H, 32H->33H ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV SP, #40H;赋堆栈指针 MOV 30H, #49H;30H 单元赋值 MOV R0, #32H;R0 指针赋值 MOV @R0, #0;32H 单元清零 MOV A, 30H XCHD A, @R0;拆分字节 ORL 32H, #30H;转换为 ASCII SWAP A ORL A, #30H;转换为 ASCII MOV 31H, A;结果存于 31H 单元 MOV A, 31H;从 31H 单元取值 ANL A, #0FH;转换为 BCD SWAP A MOV 33H, A;结果存于 33H 单元 MOV A, 32H;从 32H 单元取值 ANL A, #0FH;转换为 BCD ORL 33H, A;合并字节 HERE: SJMP HERE;踏步 END 数据块填充程序:将片外 RAM 7000H-70FFH 单元按一定规律填充 File name: fill.asm Date: 2011.8.20 Designed by: CDH

Source used: R0: 计数器 DPTR: 片外数据指针 ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV SP,#40H FILL: CLR A;A 寄存器清零 MOV R0, #00H;设循环计数器 MOV DPTR, #7000H;设数据指针 FILL1: MOVX @DPTR, A;传送到片外 RAM INC A;A 内容加 1 INC DPTR;修改数据指针 INC R0;修改循环计数器 CJNE R0, #00H, FILL1;判断是否结束 HERE: SJMP HERE;原地踏步 END 任务 2:

/*设两个无符号 16 位数为 22A4H 和 EFE7H*/ MAIN: MOV 20H,#0A4H MOV 21H,#22H MOV 30H,#0E7H MOV 31H,#0EFH;存入数据 MOV A,20H;低四位存入寄存器 ADD A,30H;低四位相加 MOV R4,A;将低四位结果存入 R4 MOV A,21H;高四位存入寄存器 ADDC A,31H;高四位相加(包括第四位相加得到的进位)MOV R3,A;高四位结果存入 R3 CLR A;寄存器清零 ADDC A,#00H;获得进位 MOV R2,A;将进位存入 R2

END 六、程序测试方法与结果 任务 1 中结果已于截图中;任务 2 依据程序运算,结果正确,更换数据后,结果仍然正确。

思考题  怎样查看工作寄存器、SFR、片内 RAM、片外 RAM 及程序代码空间内容?Disassembly 窗口有何作用? 答:工作寄存器与 SFR 的内容在调试阶段的“Register 窗口”查看,外围设备的内容在“Peripherals 项目”中查看,也可以通过相对应的固定地址在“Memory 1 窗口”中查看。Disassembly 窗口用于设置断点。

 字节拆分、合并还有哪些方法,举一例说明。

答:还可以用如下方法进行拆分(合并方法相同):

…… MOV 30H, #49H MOV A, 30H XCHD A, #03H SWAP A MOV 31H, A MOV A, 30H XCHD A, #30H MOV 32H, A ……  若按递减 1 规律填充数据块,应如何修改程序? 答:将指令“INC A”改为“DEC A”。进行减 1 操作。

 若从 7010H 单元开始,连续填充 20 个字节,应该如何修改程序?

答:FILL 与 FILL1 模块改为如下代码:

FILL: CLR A MOV R0, #00H MOV DPTR, #7010H FILL1: MOVX @DPTR, A INC A INC DPTR INC R0 CJNE R0, #14H, FILL1  若完成双字节 BCD 码加法,应如何修改程序? 答:在进行加法操作后,加上一条指令“DA A”,进行转换。

其它说明:

1.4 标题:黑体,小四号 2.正文:宋体,五号,1.5 倍行距 3.流程图使用 SmartDraw7 2 或 Visio 软件绘制 本人承诺: 本报告内容真实,无伪造数据,无抄袭他人成果。本人完全了解学校相关规定,如若违反,愿意承担其后果。

签字:

关曜东 2015 年 10 月 7 日

4.不要加封面

微机实验

微机工作总结

微机管理员岗位职责

微机实验53097

微机1227班军训

本文标题: 微机实验报告模版
链接地址:https://www.dawendou.com/fanwen/qitafanwen/332867.html

版权声明:
1.大文斗范文网的资料来自互联网以及用户的投稿,用于非商业性学习目的免费阅览。
2.《微机实验报告模版》一文的著作权归原作者所有,仅供学习参考,转载或引用时请保留版权信息。
3.如果本网所转载内容不慎侵犯了您的权益,请联系我们,我们将会及时删除。

重点推荐栏目

关于大文斗范文网 | 在线投稿 | 网站声明 | 联系我们 | 网站帮助 | 投诉与建议 | 人才招聘 | 网站大事记
Copyright © 2004-2025 dawendou.com Inc. All Rights Reserved.大文斗范文网 版权所有