[英]Assembling a JMPI instruction in NASM gives the error "parser: instruction expected"
我有这个汇编代码:
fin:
jmpi 0,0xc200
hlt ;halt cpu run and wait instructions
jmp fin
jmpi 0,0xc200
不正确,我不明白出了什么问题。 我用以下代码组装此代码:
nasm -f bin bootsect.asm -o bootsect.bin
看来您可能一直在查看使用JMPI
(段间跳转)的AS86汇编代码。 这通常被称为 FAR JMP,在 NASM 中以这种方式编码:
jmp 0:0xc200
在NASM JMPI
是简单地JMP
并有一个冒号( :
所述段和所述偏移,而不是一个逗号(之间) ,
)。
如果您希望使用 AS86 来组装引导加载程序而不是 NASM,您必须安装 AS86 包,然后以这种方式将您的代码组装成二进制文件:
as86 -b bootsect.bin bootsect.asm
目前尚不清楚您打算如何在 FAR JMP 之后到达 HLT 循环,但您可能打算这样做:
fin:
hlt ;halt cpu and wait for interrupt
jmp fin
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.