我正在尝试编写一个程序来获取两个 6 位十进制数字并显示它们的相加,但是在 16 位 8086 中,我将数字定义为双字并将 LO 放在 WORD 1 中,将 HO 放在字 2 中。类似于下面的代码,但我没有任何下一步要做的想法,任何人都可以建议我下一步操作的算法吗?谢谢
x dd(?)
next_no:
mov cl,2
mov ch,4
two_bit:
getch
sub al,30h
mov bl,10
mul bl
mov di,ax
add word ptr x+2,di
dec cl
jnz two_bit
fourbit:
getch
sub al,30h
mov bl,10
mul bl
mov di,ax
add word ptr x,di
dec ch
jnz fourbit
在这个程序中,di 是一个存储通过循环生成的数字的地方,当用户输入一个数字时,di 将倍数为 10,新数字将添加到 di,如:得到 28 的过程 di=0*10+2=2 di= 2*10*+8=28