jmp指令遇到left operator must have segment的错误

来源:百度知道 编辑:UC知道 时间:2024/07/11 06:05:54
reset_pc:jmp 0ffffh:0
start_system:mov ax,0
mov es,ax
mov bx,200h
mov al,1
mov dh,0
mov dl,80h
mov ch,0
mov cl,1
mov ah,2
int 13h
jmp 0:200h
两处jmp都被提示说出错了:left operator must have segment,是什么原因啊,这是jmp指令的经常用法啊。

jmp 0ffffh:0 代码在debug中应该是可以的,但是在正常汇编时通常不通过,原因不清楚,或许是系统无法确认部分操作数的位数造成的吧;可以考虑把地址放到内存中实现:

init: dw 0, 0ffffh
begin: dw 200h,0

jmp far [init]

jmp far [begin]