学习任何一门编程语言,都会从hello world 开始。对于一门从未接触过的语言,在短时间内我们都能用这种语言写出它的hello world。
然而,对于hello world 这个简单程序的内部运行机制,我相信还有很多人都不是很清楚。
hello world 这些信息是如何通显示器过显示的?
cpu执行的代码和程序中我们写的的代码肯定不一样,她是什么样子的?又是如何从我们写的代码变成cpu能执行的代码的?
程序运行时代码是在什么地方?她们是如何组织的?
程序中的变量存储在什么地方?
函数调用是怎样是现的?
这篇文章将简单的讨论程序的运行机制
在计算机领域有过一句经典的话:
“any problem in computer science can be sloved by another layer of indirecition”
“计算机科学领域的任何问题都可以通过增加一个中间层来解决”
比如说要实现从A到B的转换,可以先把A转换为文件A+,再把文件A+转换为我们需要的文件B。(其实在波利亚的《how to slove it》里面对这种方法也有叙述。在解题的时候可以通过增加中间层来简化问题)