-1
我正在写一个函数在我的16位实模式汇编操作系统中打印每个寄存器。我遇到的几个问题:打印汇编寄存器的十六进制值,将16位寄存器移动到8位和其他汇编问题
1移动一个16位寄存器为8位的一个
mov al, bx
这给了我error: invalid combinations of opcodes and operands
。无论如何,我可以做到这一点?
2是否将值移入ax
影响ah
和/或al
?
mov ah, 0x5
mov al, 0x10
mov ax, 0x20
请问ah
仍持有为0x5和al
保持0x10的?
3打印寄存器的十六进制值而不是ASCII码?
mov ah, 0x0e
mov al, 0x4d
int 0x10
该输出字符“M”,而不是送出0x4d也不是77,也不1001101等是否到4D转换为0x34和0x64,然后打印的唯一选择?