微机原理实验指导书(5)
时间:2025-07-08
时间:2025-07-08
微机
方法二:用E命令 -E CS:0150
CS:0150 35,39,30,41,32 ↘ 4.执行程序后检查执行结果可用D命令:
-D CS:015A ↘
CS:015A 05,09,00,FF,02
5.参考程序:
;PCS3-1
ORG 0100H
MOV CX,0005H MOV DI,150H BB: MOV BL,0FFH MOV AL,[DI] CMP AL,3AH JNB DONE SUB AL,30H JB DONE
MOV BL,AL DONE:MOV AL,BL
MOV [DI+0AH],AL
INC DI LOOP BB MOV AH,4CH
INT 21H ’
ORG 0150H
DB 35H,39H,30H,41H,32H
(二)BCD码转换为二进制码
在各种智能仪器和信息处理中,人们总习惯于用十进制数来表示信息。但是绝大多数计算机没有十进制运算指令(仅有十进制调整指令)。所以常规的方法是将输入的十进制数转换为二进制数后,再进行各种数据处理。
BCD码分为组合BCD码和未组合BCD码。组合BCD码每字节存放两位BCD数,未组合BCD码每字节只存放一位BCD数,高半字节为0。组合BCD码加、减后必须用DAA和DAS指令进行调整(乘法或除法没有调整指令)。未组合BCD码则可进行加、减、乘、除四则运算,其调整指令分别为AAA,AAS,AAM和AAD。
本实验是要把两位未组合BCD码数转换成二进制数。
设未组合BCD码以存放在起始地址为CS:0150H的区域,把它们转换为二进制数后,再分别存入起始地址为CS:0165H的区域。例如 ORG 0150H
DB 03H,06H,08H,09H,06H,05H,02H,09H 则转换后CS:0165H开始的单元的内容为:
CS:0165H 24H,00H,59H,00H,41H,00H,1DH,00H 提示:
1.算法是 “十位×10 +个位”。其中的10可以用“10=8+2”来实现。
5
下一篇:工厂暑期实习报告