重学计算机组成原理(四)- 进击,更强的性能!(下)

4 总结

打孔卡,其实就是一种存储程序型计算机。


只是这整个程序的机器码,不是通过计算机编译出来的,而是由程序员的人脑“编译”成一张张卡片的

对应的程序,也不是存储在设备里,而是存储成一张打好孔的卡片

但是整个程序运行的逻辑和其他CPU的机器语言没有什么分别,也是处理一串“0”和“1”组成的机器码而已。


我们看到了一个C语言程序,是怎么被编译成为汇编语言,乃至通过汇编器再翻译成机器码的。


除了C这样的编译型的语言之外,不管是Python这样的解释型语言,还是Java这样使用虚拟机的语言,其实最终都是由不同形式的程序,把我们写好的代码,转换成CPU能够理解的机器码来执行的。


只是解释型语言,是通过解释器在程序运行的时候逐句翻译,而Java这样使用虚拟机的语言,则是由虚拟机对编译出来的中间代码进行解释,或者即时编译成为机器码来最终执行。


5 推荐阅读

  • 了解Intel CPU的指令集参看
    《计算机组成与设计:软/硬件接口》第5版的2.17小节

参考

深入浅出计算机组成原理

上一篇:数据结构——图的十字链表表示法


下一篇:重学计算机组成原理(六)- 函数调用怎么突然Stack Overflow了!(上)