微机原理实验 - 运算类编程实验
更新时间:2023-09-21 22:33:01 阅读量: 工程科技 文档下载
- 微机原理实验指导书及答案推荐度:
- 相关推荐
深 圳 大 学 实 验 报 告
课程名称: 微机计算机技术
实验项目名称: 运算类编程实验
学院: 信息工程学院
专业: 电子信息工程
指导教师:
报告人: 学号: 2009100000班级: <1>班
实验时间: 2011年5月5日
实验报告提交时间: 2011年5月17日
教务处制
一、 实验目的
1、 掌握使用运算类指令编程及调试方法。
2、 掌握运算类指令对各状态标志位影响及其测试方法。 3、 学习使用软件监视变量的方法。
二、 实验设备
PC机一台,TD-PITE实验装置。 三、 实验要求
1、 计算X+Y=Z,将结果Z存入某存储单元。 2、 计算X-Y=Z, 其中X、Y、Z为BCD码。 3、 实现十进制数的乘法运算,被乘数与乘数均以BCD码的形式存放在内
存中,乘数为1位,被乘数为5位,结果为6位。
四、 方法与步骤
1、计算X+Y=Z
本实验是双精度的加法运算,编程是可利用累加器AX,先求出低16位的和,并将运算结果存入低地址的存储单元,然后求高16位的和,将结果存入高地址存储单元中。由于低16位运算后可能向高位产生进位,因此高16位运算时用ADC指令,这样在低16位相加运算有进位时,高位相加会加上CF中的1.
实验程序如下:
STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS
PUBLIC XH,XL,YH,YL,ZH,ZL DATA SEGMENT XL DW ? XH DW ? YL DW ? YH DW ? ZL DW ? ZH DW ? DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK START:
MOV AX,DATA MOV DS,AX MOV AX,XL ADD AX,YL MOV ZL,AX MOV AX,XH ADD AX,YH
MOV ZH,AX JMP START MOV AH,4CH INT 21H CODE ENDS END START
2、计算X-Y=Z 实验代码如下:
STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS PUBLIC X,Y,Z DATA SEGMENT X DW ? Y DW ? Z DW ? DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK START:
MOV AX,DATA MOV DS,AX MOV AH,00H SAHF
MOV CX,0002H MOV SI,OFFSET X MOV DI,OFFSET Z A1: MOV AL,[SI] SBB AL,[SI+02H] DAS PUSHF
AND AL,0FH POPF
MOV [DI],AL INC DI INC SI LOOP A1 JMP START CODE ENDS END START
3、乘法运算 实验部分代码:
五、实验过程 (1)加法运算
1、编写程序,编译、链接无误后装入系统
2、程序装载完成后,点击‘变量区’至变量监视窗口 3、点击
,将变量XH,XL,YH,YL,ZH,ZL添加到变量监 视
窗口,修改XH,XL,YH,YL的值,如右图:
4、在JMP START语句行设置断点,运行程序
5、当程序遇到断点后停止运行,查看变量监视窗口,如 下图所示:
6、多次次改变XH、XL、YH、YL的值,观察其变化,验证程序的功能。如下图示:
(2)减法运算
1、输入程序,编译。链接无误后装入系统
2、切换至变量监视窗口,将X,Y,Z添加入其中,并未X,Y赋值,
如右图所示:
3、在JMP START 语句行设置断点,运行程序
4、当程序遇到断点后停止运行,查看变量监视窗口,如下图所示:
5、多次次改变X、Y的值,观察其变化,验证程序的功能。如下图示:
(3)乘法运算
1、输入程序,编译。链接无误后装入系统
2、查看寄存器窗口获得CS的值,使用U命令得到数据段 段地址DS,然后通过E命令为被乘数和乘数赋值,如右图:
3、运行程序,然后再停止运行
4、通过D 命令查看计算的结果,如下图所示:
5、多次测试几组数据,验证程序的正确性,如下图:
五、 实验结论与心得:
正确实现的加、减、乘的运算类编程,进一步掌握了使用运算类指令编程及调试方法。及对各状态标志位影响及其测试方法。同时增强了对使用软件监视变量方法的了解。这个实验加减法比较简单,乘法部分花了不少时间,请教同学师兄等最后实现了实验的要求。
指导教师批阅意见: 成绩评定: 指导教师签字: 年 月 日 备注:
注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。
2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。
正在阅读:
微机原理实验 - 运算类编程实验09-21
数据库及其操作练习题04-23
导学案与教案的区别07-21
2012年万科市场推广活动集锦09-03
铁路建设项目工程试验室管理标准qcr 9204 - 图文06-17
买年货作文400字06-19
第2课时 用数轴表示负数(例 3)教案(人教版六年级下册数学)07-06
燃料公司党支部工作总结03-27
济南大学文学院网站策划部工作总结09-21
九年级化学实验操作比赛试题及实验报告06-27