编译器 是如何让源代码生成文件的

来源:百度知道 编辑:UC知道 时间:2024/07/01 03:34:14
在c语言中编译器如何让源代码生成文件的?对源代码做了哪些修改或者添加了些什么代码才让源代码生成文件的 可不可以不用编译器来生成文件呀?
请高手指点一下啊
我是说编译器出了将源代码翻译成2进刺外还添加了什么菜形成了文件这个找的到得实体 它生成文件时是不是还添加了什么实体生成代码 文件是不是将这些代码和在一起再起了个名字这么简单呢? 但是即使是这样它又用什么代码将这些代码和成的呢?
要不然我直接在文本文档里写机器码问什么不能运行呢?

我还想问一下什么叫文件?
文件时怎样生成的它问什么能自动在硬盘上占用一定的空间 机器码与文件有哪些区别呢? 文件到底是怎样的集成机制
还有header是什么意思

要知道...电脑看的东西跟人看的东西是不一样的

电脑看得明白的就只有1跟0

编译器就是以一个人可以看得明白的环境下
让人写出可以翻译成电脑看得明白的东西
再把那东西变成0跟1的工具

要不用编译器也可以
不过你就要懂电脑的语言才可以

一个比较容易明白的例子
你是中国人, 只会说中文
对着一个只会说英文的英国人
你怎说他也不会明白
除非, 你们中间有一个人可以把中文翻译成英文跟把英文翻译成中文
这样才可以沟通
不然唯一的方法就是你去学英文
因为现在是你要跟那英国人说话, 对方可没东西跟你说

----------------------------------------------------------
我是说编译器出了将源代码翻译成2进刺外还添加了什么菜形成了文件这个找的到得实体
->当然会有些所谓的header..不过那些不重要
它生成文件时是不是还添加了什么实体生成代码
->跟上面的回答一样, 不过内容基本上都是你写的东西
文件是不是将这些代码和在一起再起了个名字这么简单呢?
->这样想也可以...不过名字其实也是你自己起的....
但是即使是这样它又用什么代码将这些代码和成的呢?
->就是根据所谓的syntext去作为一程规定, 去把交字变成binary
要不然我直接在文本文档里写机器码问什么不能运行呢?
->可以, 不过你要肯定你打出来的东西不是文字的0跟1, 而是在binary层面上的0跟1

--------------------------------------------------
我还想问一下什么叫文件?
->开得到 看得到的都可以叫成文件(资料夹除外)
文件时怎样生成的它问什么能自动在硬盘上占用一定的空间 机器码与文件有哪些区别呢?
->如果你以0和1的角度来看, 文件其实也是一堆机器码, 只是这堆机器码所代表的