C/C++逆向汇编
+ -

编绎链接的概念

2021-07-01 113 0

1.程序的构建

代码从编写完成后,经过编绎器的词法分析,语法分析,语义分格到生成中间代码,然后进行优化,生成最终的目标文件,最后经过链接口连接形成可执行文件。可执行文件被加载到内存运行,形成进程。

程序的构建
2.编绎

编绎即将C/C++语言翻译成汇编语言
词法分析:读源文件并扫描字符流,产生有效的记号流。
语法分析:对记号流分析,根据语法规生成语法短语,并生成语法树。
语义分析:对语义树进行处理,审查正确性。
生成中间代码:根据语义树生成目标汇编文件 。

3.链接
将各个目标文件合成系统可识别的可执行文件 。
生成代码段。
生成只读数据段。
生成资源段。
对外部DLL或系统API生成导入表,如果输入则生成导出表。
根据可执行文件 规则,生成必要的数据信息(如PE文件 规则的PE头格式等)。

4.加载器
为程序的执行做准备:
将可执行文件加载到内存。
加载依赖库或DLL。
对基地址冲突的DLL进行调整(API函数地址的确定)。

0 篇笔记 写笔记

编绎链接的概念
1.程序的构建代码从编写完成后,经过编绎器的词法分析,语法分析,语义分格到生成中间代码,然后进行优化,生成最终的目标文件,最后经过链接口连接形成可执行文件。可执行文件被加载到内存运行,形成进程。2.编绎编绎即将C/C++语言翻译成汇编语言词法分析:读源文件并扫描字符流,产生有效的记号流。语法分......
作者信息
我爱内核
Windows驱动开发,网站开发
好好学习,天天向上。
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!