【发布时间】:2019-11-14 09:39:14
【问题描述】:
我看到的问题表明我必须使用 JMP 或 CALL 但如何使用。
我想用有效的 8086 指令(指令)替换指令 MOV CS, AX 以解决错误
CS不能直接修改(使用far JMP或CALL)
【问题讨论】:
-
在 8086 上,您可以将某些内容移动到
CS,但这通常不是您想要的。更改CS会更改从其中加载段指令的更改,从而导致远跳转到难以预测的位置。你想达到什么目的?
我看到的问题表明我必须使用 JMP 或 CALL 但如何使用。
我想用有效的 8086 指令(指令)替换指令 MOV CS, AX 以解决错误
CS不能直接修改(使用far JMP或CALL)
【问题讨论】:
CS,但这通常不是您想要的。更改CS 会更改从其中加载段指令的更改,从而导致远跳转到难以预测的位置。你想达到什么目的?
这里有几个例子:
mov ax,segment_value
mov bx,offset_value
push ax
push bx
retf
; ...
DB 0EAh ;far jump
DW offset_value
DW segment_value
【讨论】:
push immediate,只需 186 和更新版本。您根本不需要 mov 来注册,只需 push seg ; push off ; retf。 push 操作数可以是寄存器、内存或(在 186 和更新版本上,立即数)。