我是汇编的新手,需要一些帮助来创建函数。我已经完成了一些代码,但是需要轻推才能完成。我需要的功能(ReadHexByte
)将从键盘输入中读取一个字节(两位数字0-9)并将其存储在AL寄存器中。最终,输入的第一个数字将被设置为AL的最高有效位,而输入的第二个数字将被设置为AL的最低有效位。我可以说第一个数字存储在DH中,第二个数字存储在DL中。
问题示例:如果用户输入9,然后输入4,则这将是字节94h。然后,AL将存储94h
.data
charIn1 BYTE ?
charIn2 BYTE ?
.code
main proc
call ReadChar ;user enters 9
mov dh, al ;move 39h to dh
sub dh, 30h ;dh set to 09h
call ReadChar ;user enters 4
mov dl, al ; move 34h to dl
sub dl, 30h ;dl set to 04h