惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
J
Java Code Geeks
小众软件
小众软件
D
Docker
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
V
V2EX
博客园 - 叶小钗
GbyAI
GbyAI
Microsoft Azure Blog
Microsoft Azure Blog
Stack Overflow Blog
Stack Overflow Blog
B
Blog RSS Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
IT之家
IT之家
博客园 - 司徒正美
M
MIT News - Artificial intelligence
T
The Blog of Author Tim Ferriss
The GitHub Blog
The GitHub Blog
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
C
Check Point Blog

汇编

在浏览器使用 wasm 如何解决兼容性问题 C++中 i=i; 与 *p=i; 对应的汇编代码为什么不一样? 汇编问题求解,这个问题我自己确实做不来 有谁能来教我一下汇编的问题吗?我真的因为这个卡了好久了 如何学习汇编语言? Lock 指令到底有什么用? 求大神帮忙解答两个题,关于编程的,应付微机原理与应用过关考试的,不胜感激 6.828 lab1 Exercise 2 死循环问题 如何解决 ShellCode 中 call 所产生的 \x00 用 AMD64 汇编写的 web server 来做个调查,各位V2exer 有多少学过汇编?有用过否? Introduction to UNIX Assembly Programming
Linux 下, global variable 在汇编里是什么时候被初始化的呢?
dangyuluo · 2022-10-19 · via 汇编

以下是源码:

int duplicate(int n)
{
    return n * 2;
}
int global_var = duplicate(0x42);

int main(int argc, char** argv){
    return global_var;
}

有一个 global variable, 用以下命令编译,并查看汇编代码:

g++ -o main ./main.c -O0
objdump -C -S -s main

其输出可见: https://controlc.com/70c59b1e

总是听别人说,static storage variable(基本上就是 global variable)在进入main之前就被初始化了,但是在查看汇编代码时,我并没有找到相关的调用。

__static_initialization_and_destruction_0(int, int)看起来像是初始化global_var,被_GLOBAL__sub_I__Z9duplicatei调用,但是我没有在任何地方看到对_GLOBAL__sub_I__Z9duplicatei的调用。因此想请问我的思路对么?