V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  bfc0  ›  全部回复第 1 页 / 共 1 页
回复总数  5
你通过 gcc -Wall -g -o test.o -c test.c -m32 生成的是“可重定位目标文件”,其经过链接后得到“可执行目标文件”

在链接前,符号的具体地址是不知道的,所以会生成占位的指令,就是那两个指向 `print_banner+xxx` 的 call 指令

链接后两个 call 应该是 `__x86.get_pc_thunk.ax` 和 `puts@plt`

至于为什么要有 `get_pc_thunk` 调用是因为 x86 没有 PC 相对寻址,所以需要通过 call 让处理器将 PC 压栈
ZSM3S964XRKDKU3AXUWB3XB 已兑换,感谢🙏
2023-08-30 10:39:56 +08:00
回复了 c3de3f21 创建的主题 问与答 Q: Dash 有 Linux 版本吗?或者 Linux 上有没有什么软件类似 Dash
C0KNTXXDKQ5K82M6YM4HQF5 已用
2023-06-29 21:00:03 +08:00
回复了 Linvas 创建的主题 程序员 如何自己搭一个 GIS 的地图?
自建的话用 Geoserver 做瓦片服务,前端用 Leaflet 或者 openlayers 搭一个
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3618 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 22ms · UTC 04:41 · PVG 12:41 · LAX 20:41 · JFK 23:41
Developed with CodeLauncher
♥ Do have faith in what you're doing.