0
我想创建一个打印AH
,AL
,BH
和BL
寄存器的值的过程。我有这样的:在汇编器中打印AH,AL,BH和BL寄存器中的值?
prntABHL:
PUSH BL
PUSH BH
PUSH AL
PUSH AH
PUSH fourNums ! defined in data as "%d, %d, %d, %d\n"
PUSH _PRINTF
SYS
ADD SP, 12 ! reset stack
RET
这将导致对PUSH
说明四级寄存器中的错误。我假设,因为PUSH
需要一个16位的值,并且AH
和AL
是8位的值。
我怎样才能在AH
,AL
,BH
,并BL
寄存器作为参数指定的值的函数,如果他们不是16位长?有没有合理的解决这个问题的简单方法?
我收到一条错误消息,在执行'MOV CL,BL'和其他将某些东西移动到CL的行上的'Register error'。你有什么想法可能导致什么?它们具有匹配的长度。 –
你在用什么汇编语言? – nrz
我正在使用8088汇编程序 –