广工2013微机原理实验报告2
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.实验目的
1.掌握使用运算类编程指令编程及调试方法;
2.掌握运算类指令对各状态标志位的影响及其测试方法;
3.学习使用软件监视变量的方法。
二.实验内容
已知在起始地址为0500H的内存单元中,存放一串数据:10H,20H,30H,40H,50H,60H.求其平均值,并把平均值转换成BCD码存入0510H单元中。
三.实验步骤
1.利用累加器AX,先求数据的和
2.和除以6,商存在AL,余数存在AH,
3.向左循环4位,得DCB码
四.实验的结果及分析。
设计程序如下
STACK SEGMENT STACK;
DW 64 DUP (?)
STACK ENDS
DATA1 DB 10H,20H,30H,40H,50H,60H
DATA2 DB?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
LEA DI,DATA1
MOV AX,0
MOV CX,6
CLC
DONE:ADD AL,[DI]
ADC AH,0
INC DI
LOOP DONE
MOV BL,6
DIV BL
MOV CL,4
SHL AL,CL
ADD AH,AL
MOV DATA2,AH
INT 03H
CODE ENDS
END
用(DS):0510↓,显示结果:56
五.实验中出现的问题、解决方法和心得体会ADC 指令的重复使用需要考虑CF的问题。