【发布时间】:2014-07-20 06:32:48
【问题描述】:
我正在汇编 (FASM) 中进行求和和求和,试图得到十进制的结果。我写了我将在十进制内求和的值。当我运行它时,它确实给了我一个输出,但它是一个二进制输出。我可以自己翻译成小数,但我真正想要的是输出已经是小数了。
name "add-sub"
org 100h
mov al, 10 ; bin: 00001010b
mov bl, 5 ; bin: 00000101b
add bl, al
sub bl, 1
mov cx, 8
print: mov ah, 2
mov dl, '0'
test bl, 10000000b
jz zero
mov dl, '1'
zero: int 21h
shl bl, 1
loop print
mov dl, 'b'
int 21h
mov ah, 0
int 16h
ret
【问题讨论】:
-
“这个问题以前从未在 Stack Overflow 中提出过”。真的吗?对我来说,您似乎想打印寄存器的值,这在之前肯定已经被问过(例如,参见stackoverflow.com/questions/15621258/…)。您使用的是 FASM 而不是 NASM/MASM/TASM 这一事实并不能真正使它成为一个独特的问题。
标签: assembly binary x86-16 fasm