【发布时间】:2016-07-05 03:56:11
【问题描述】:
我正在尝试将 Assembly x8086 中的两个十六进制数字相加,每个数字都有一个数字。我知道如何对小数求和。有人可以告诉我怎么做吗?这是我的代码:
ADD CL, BL ; CL and BL have the one digit numbers
MOV AL, CL
MOV AH, 0
AAA
ADD AX, 3030H
MOV BX, AX
mov dl, bh
call mostrarchar
mov dl, bl
call mostrarchar
int 20H
Nomeprog ENDP
mostrarchar proc near
mov AH, 02h
int 21h
ret
mostrarchar endp
【问题讨论】:
-
寄存器保存位,基数 2。十六进制是基数 16,直接转换基数 10 根本不转换,汇编器必须为您将其转换为二进制。就像您使用十六进制数字一样,它会为您翻译。你知道如何做一个,你知道如何做另一个。
-
你真的写了那个代码吗?
-
如果我有一个 BCD 或二进制数字,如何以十六进制显示?
-
数字没有底,numerals have。使用ASCII表转换十六进制数字数字,具体数字0-9与十进制相同,为a-f您需要添加不同的偏移量(不再是 30 小时)。另外,请务必使用comment replies,否则您的哭泣将是徒劳的。