ucore实验中GDB反汇编显示错误如何解决

在做清华大学操作系统ucore实验,lab1的练习2,从CPU加电后的第一条指令单步走
在QEMU里我查看的都是正确的:

img

但是我用gdb打开就是这样:

img

我单步走了下,也确实jmp到了对应的指令位置:

img

那么就是说是gdb反汇编显示错误了,如何才能调整了

你用指令n单步执行,如果你的代码中会执行到像dw这种定义数据的伪指令的地方,就会出现这种情况。你只要jmp越过所有dw,就可以正常调试

执行到哪,才有必要反汇编哪。