请帮助我获取此汇编代码。我需要找到AX
,BX
和DX
的值,但是我不能这样做。非常感谢您的帮助。谢谢。
MOV AX,0d
RCL AX,1h
MOV AX,e213h
MOV BX,d123h
XOR AX,BX
XOR BX,AX
XOR AX,BX
RCL AX,10h ; Give AX= BX=
MOV AX,215h
MOV DX,2h
MOV BX,8h
DIV BX ; Give AX= BX= DX=
INT 20h
答案 0 :(得分:2)
您的问题似乎不清楚,但是我尝试回答。如果您想知道寄存器的值,则至少有两种方法:第一种方法是在纸上执行代码,我认为本练习是针对这种情况的。后者涉及在MASM或C中以内联汇编的形式创建过程。
因为,在我看来,这是一项作业,只需在纸上进行:
; ax=?, bx=?, dx=? this is the starting point. assume all registers are unknown
MOV AX,0d
; ax=0, bx=?, dx=? mov performs copy between registers, 0d is 0 (in decimal)
RCL AX,1h
; ... and so on... If you don't known where to look, have a look at for RCL: https://c9x.me/x86/html/file_module_x86_id_273.html
MOV AX,0e213h
MOV BX,0d123h
XOR AX,BX
XOR BX,AX
XOR AX,BX
RCL AX,10h ; here1 Give AX= BX=
MOV AX,0215h
MOV DX,2h
MOV BX,8h
DIV BX ; here2 Give AX= BX= DX=
INT 20h
Here,您可以浏览所有操作码和助记符。