在汇编中 <main> 行旁边的十六进制值是什么?

In assembly what are the hex values next to the <main> lines?

我刚开始学习汇编,我在网上找不到这个问题的答案。我理解右边的基本命令,但我不明白左边是怎么回事。

显然 <main+x> 告诉您主函数中正在执行哪一行汇编代码,但是最左边的十六进制值是多少?它应该是一个地址吗?但是不同的行不是 4 分开的,所有这些东西都不会被压入堆栈,对吗?

有谁知道0x080483bf代表什么?

谢谢!

0x080483bf <main+0>:    push   ebp
0x080483c0 <main+1>:    mov    ebp,esp
0x080483c2 <main+3>:    push   ecx

Does anyone know what 0x080483bf represents?

这是机器码指令在内存中的绝对地址。

Obviously tells you what line of assembly code ...

错了。 "x"是相对地址:

意思就是这条指令的地址是由第一个指令的地址加上x的值计算的:

0x080483bf + 3 = 0x080483c2