首页学历类考试大学计算机科学
(简答题)

两个4位BCD码数相加,被加数和加数分别存于30H、31H和40H、41H单元中(次序为千位、百位在低地址中,十位、个位在高地址中),和数放在50H、51H、52H中(52H用于存放最高位的进位),试编写加法程序。   

正确答案

O.RG   00H
M.OV   30H, #12H  ;
M.OV   31H, #34H  ;
M.OV   40H, #56H  ;
M.OV   41H, #78H  ;
M.OV   A, 31H  ;  取被加数十个位
A.DD   A, 41H  ;  相加,(A) = (31H) + (41H)
D.A    A          ;  十进制调整
M.OV   51H,A ;  存十位个位运算结果
M.OV   A, 30H     ;  取被加数千百位
A.DDC  A, 40H     ;  相加,(A) = (30H) + (40H)
D.A    A       ;   十进制调整
M.OV   50H,A ;  存千位百位运算结果
C.LR   A          ;  清A
A.DDC  A,#0       ; 将进位加到A中
M.OV   52H, A  ; 存进位
S.JMP  $

答案解析

相似试题

  • (简答题)

    假定DX和BX中包含4位压缩BCD数(1234和5678),将DX和BX中的BCD数相加且将和数存入CX,编写一短程序段。并求出CX是多少?

    答案解析

  • (简答题)

    内存中以FIRST和SECOND开始的单元中分别存放着两个16位组合的十进制(BCD码)数,低位在前。编程序求这两个数的组合的十进制和,并存到以THIRD开始的单元。

    答案解析

  • (单选题)

    两个非组合型BCD码数据相加后,执行加法校正指令AAA是,首先检查是否需要校正。需要校正的条件有:AF=1、CF=L和()。

    答案解析

  • (简答题)

    若有两个4字节的无符号数相加,这两个数分别存放在2000H和3000H开始的存储单元中,得到的和存放在2000H开始的内存单元。试编程完成。

    答案解析

  • (简答题)

    将十进制数279.85转换成BCD码数为多少?

    答案解析

  • (单选题)

    设q(n,m)是将正整数n划分成最大加数不大于m的若干不同正整数之和的划分数,则q(n,m)为()

    答案解析

  • (填空题)

    两个原码数相乘,其积的符号位为相乘两数的符号位()。其积的数值为相乘两数的()之积。

    答案解析

  • (简答题)

    编写一汇编语言程序:将字节存储单元BUF中两个压缩BCD码(XYH)拆成两个非压缩BCD码,并转换成两个对应的ASCII码,分别存放在ABC1和ABC2单元中.

    答案解析

  • (简答题)

    编写一短程序段:将AL中两压缩的BCD码分解为两位压缩的BCD码,分别装入A(高位BCD码)和B(低位BCD码)两个变量中。要求用到无符号除法指令DIV来实现编程功能。

    答案解析

快考试在线搜题