在我的学校实验室中,我被要求使用 arm-elf-gdb 逐步调试程序(用汇编编写)。当我在 _start 处设置断点然后运行程序并单步执行以显示寄存器的当前值时。但是,当我尝试单步执行时,调试器不会显示寄存器的值。我使用“i r”来显示寄存器的最终值,但我需要逐步查看这些值的变化。知道为什么调试器不显示值吗?
提前致谢。
汇编代码:
.text @ Executable code below
_start: .global _start @ "_start" is required by the linker
.global main @ "main" is the main program
b main @ Start the main program
main: @ Entry to function "main"
mov r0, #10
mov r1, #3
add r2, r1, r0 @ r2 = r1 + r0
sub r3, r0, r1 @ r3 = r1 - r0
mul r1, r0, r1 @ r1 = r0 * r1
swi 0x11 @ Software interrupt to terminate
.end