【发布时间】:2015-12-04 19:22:58
【问题描述】:
如果你编译、链接和运行类似这样的东西:
global _start
section .text
_start:
jmp message
proc:
...
message:
call proc
msg db " y0u sp34k 1337 ? "
section .data
- 机器如何知道他需要跳到哪里?我猜“message:”和“proc:”被翻译成地址。
- “message:”和“proc:”有绝对地址还是相对地址?
- 如果我在我的 PC 上编译程序并在另一台 PC 上执行它,它如何在另一台机器上运行?我的意思是关于“message:”和“proc:”的地址。是否总是不同的地址?
【问题讨论】:
标签: assembly compilation x86 memory-address