从文本文件hello.txt到可执行文件hello
第一阶段
使用编辑器编写的源代码 (.txt) 文件 hello.c。经过 Pre-processor 进行前处理。在前处理阶段,当 pre-processor 读到代码中的#include<stdio.h>时,会读取头文件stdio.h,并将其直接插入源代码中。最后得到经过修改后的源代码文件 hello.i。
第二阶段
编译器(complier)将 hello.i 翻译成 hello.s ,此时的 hello.s 仍然是文本文件,这时候得到的是一个汇编程序(assembly-program)。汇编语言对不同的高级语言和不同的编译器的输出结果使用的是相同的语言,比如 C 和 Fortran 。
第三阶段
汇编器(assembler)将 hello.s 翻译成机器语言,打包成可重定位程序(relocatable object program)hello.o 。这时候的的 hello.o 是二进制文件,而不再是文本文件。
第四阶段
程序中使用的标准库函数(如printf)由编译器提供,这些被提前编译好的库函数文件(如 printf.o )被链接器(Linker)合并到源程序中,最后输出可执行文件(executable object file)hello 。
从文本文件hello.txt到可执行文件hello的更多相关文章
- 为毛无法创建文本文件COM1.txt
是的,windows系统下,右键,新建文本文件,将文件名编辑为COM1.txt,确认,保存……THEN....你会发现无论如何也无法创建一个文本文件,名为COM1.txt. 猜是COM1被作为了IO设 ...
- PHP读取文本文件(TXT)
<? header("content-type:text/html;charset=utf-8"); $file = "demo.txt"; ###判断该 ...
- 纯文本文件 numbers.txt, 里面的内容(包括方括号)如下所示
from collections import OrderedDict import xlwt with open('student.txt','r') as f: number_list = jso ...
- 纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示
import json from collections import OrderedDict import xlwt with open('student.txt',encoding='utf-8' ...
- 敏感词文本文件 filtered_words.txt,里面的内容为以下内容,当用户输入敏感词语时,则打印出 Freedom,否则打印出 Human Rights
敏感词文件内容: 代码: def filtered_words(path='filtered_words.txt'): words = [] with open(path, 'r', encoding ...
- 如何将cmd中命令输出保存为TXT文本文件
在使用Windows 中的cmd.exe工具时,有时候我们想要把我们的输入命令及结果保存起来, 但是用复制的方法过于麻烦:有时输出数据条数过大,会造成内容自动滚出屏幕,无法阅读,我们可将命令运行的结果 ...
- 将cmd中命令输出保存为TXT文本文件
转自:https://www.cnblogs.com/hongten/archive/2013/03/27/hongten_windows_cms.html 例如:将Ping命令的加长包输出到D盘的p ...
- 批量处理txt文本文件到Excel文件中去----java
首发地址:http://blog.csdn.net/u014737138/article/details/38120403 不多说了 直接看代码: 下面的FileFind类首先是找到文件夹下面所有的t ...
- 【Linux开发】将cmd中命令输出保存为TXT文本文件
将cmd中命令输出保存为TXT文本文件 在网上看到一篇名为:"[转载]如何将cmd中命令输出保存为TXT文本文件" 例如:将Ping命令的加长包输出到D盘的ping.txt文本文件 ...
随机推荐
- Netflix:我们为什么要将GraphQL引入前端架构?
作者|Artem Shtatnov译者|无明 在这篇文章中,我们将分享 Netflix 在这些应用程序的前端架构中引入 GraphQL 所积累的经验. 在内部,我们把用于管理广告创建和组装的主要应用程 ...
- linux-java
查看Java进程耗内存线程 top -Hp pid printf '%x\n' pid ->jid(java thread) 查看time值最大 jstack pid | grep jid 查看 ...
- pycharm配色
setting-appearanse-theme-IntelliJ setting-Editer-color scheme-Default setting-Editer-color scheme-py ...
- Mac 终端SSH连接服务器
1.打开终端 2.看是否是处于root目录下,是看第3步:否则执行sudo -i,输入电脑密码 3.执行 ssh root@host(host:ip地址或者域名) 4.如果不是第一次,则已成功连接.第 ...
- php wordwrap()函数 语法
php wordwrap()函数 语法 wordwrap()函数怎么用? wordwrap()函数表示按照指定长度对字符串进行折行处理,语法是wordwrap(string,width,break,c ...
- SPI总线介绍和裸机编程分析
一.SPI总线结构 SPI(Serial Peripheral Interface)串行外设接口,是一种高速的,全双工,同步的通信总线.采用主从模式(Master Slave)架构,支持多个slave ...
- MPU6050寄存器记录
参考资料:http://blog.sina.com.cn/s/blog_8240cbef01018i10.html 不过有一些寄存器没有写到,所以我自己加一点: 1)Register 25 - IN ...
- POJ 2808 校门外的树(线段树入门)
题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0,1,2,……,L,都种 ...
- select change()
$(".learnStageId").change(function(){ var id = $(this).val(); $(".gradeId").find ...
- springboot核心原理
1.基于你对springboot的理解描述一下什么是springboot 它是一个服务于spring框架的框架,能够简化配置文件,快速构建web应用, 内置tomcat,无需打包部署,直接运行. 2. ...