这个问题,真的相当复杂,我很惊讶真的要问这么个问题,因为它太过于复杂,而且对于不同的“代码”,差别也是相当之大的。
----
总体上来说,
所谓的代码就是对过程/方法/描述的一种抽象,抽象为机器/环境/程序可以理解的东西.
所谓的执行呢,就是机器/环境/程序,按照如上抽象出来的东西,将它执行/呈现出来.
----
回到你的问题上来,估计你问题的是C代码是如何转化为可执行程序的.
这里C是一种代码表述方法,就像语文作文的作文格式类似的,只是这个格式要严格的多.可执行程序呢,就是一个执行过程,就像语文作文念一遍听一样.
C基本过程如下:预处理,编译,优化,链接过程.具体可以上网自己搜出来看.
预处理,就是简单的文本替换,比如鲁迅的通假字.
编译+优化,就是从C语言转化为汇编语言,从汇编语言到二进制机器码.
链接是执行的时候才有的过程,比如调用系统函数或者库,这个时候就会去调用它,就像作文里面引用典故一样,必须知道典故,才可以解释清楚意思.
----
为了不闭塞思维,你也可以看下其他的"代码","执行".例如网页的创作.
假设就最简单的html(这个你不知道,还是多看点书吧)
html描述了一个网页的样子,但是它不是把所有的要素都放在自己里面.例如CSS之类的定义了html页面的结构排版,
最后网页的显示,这个就相当于一个"代码执行"的过程,这个执行过程,得到了html,css,引用的图片及其他等等,最后就用js引擎,网页渲染,最后的到网页的样子.呈现给用户. |