中央处理器@CPU是怎么看懂代码的?( 二 )
怎么办?
其实 , 早在高级语言出现之前的汇编语言时代 , 聪明的计算机研发人员就开发出了专门的程序 , 用来将汇编语言和高级语言翻译成机器语言 , 其过程相当于将英语名著翻译成汉语著作 。
说白了 , 这种翻译程序相当于人类中的翻译家 。
翻译程序有两种工作方法:编译和解释 , 相应的程序名称是编译器和解释器 。 两者的区别是 , 编译是在执行前把整个源程序(高级语言程序)翻译成目标程序(机器语言程序) , 而解释是一次只翻译和执行源程序中的一行 。
本文插图
打个形象的比方 , 解释器相当于发布会的实时翻译 , 演讲的嘉宾说一句 , 实时翻译马上翻译一句 。 编译器则相当于著作翻译家 , 整本翻译完成后 , 再让出版社印刷上市 。
经过翻译程序的努力 , 现在CPU能看懂程序员写的程序了 。 当然 , 用开头提到的文言文编程语言编写的程序想要让CPU看懂 , 还得多一道翻译步骤 , 即要么翻译成Javascript , 要么翻译成Python 。 多转了一圈 , 不知道程序执行效率如何 。
由于CPU不能直接理解用高级语言写成的代码 , 必须依赖翻译程序翻译成机器语言 , 因此翻译程序可以极大地影响甚至决定处理器性能的发挥 。 如果没有一个好的翻译程序 , 那么CPU的性能再强大 , 也好比茶壶装的饺子 , 倒不出来 。
正因为如此 , 谷歌在安卓4.4之后 , 抛弃了Dalvik虚拟机 , 改为ART , 实际是将翻译程序从解释器切换到编译器 , 发挥了芯片的性能 , 提高了程序运行效率 。
现在 , 手机大厂包括华为、OPPO和vivo都开始重视编译器开发 , 说到底就是为了发挥芯片性能 , 让它不再成为倒不出饺子的茶壶 。
最后总结一下 , 用翻译程序把程序员编写的程序翻译成二进制代码的机器语言后 , CPU就能看懂代码了 , 而且翻译程序的优劣可以影响乃至决定CPU性能发挥 。
图片源自网络 , 版权归图片作者所有 。
推荐阅读
- 『价格』价格差 100,华为 Mate30 和 iPhone SE2 怎么选?答案简单!
- 『市场份额』鲁大师公布一季度手机排名,华为荣耀排名第一、二名,安兔兔怎么看?
- 『冬季摄影』冬天摄影:怎么拍摄以花朵为主题的冬季照片?
- 「运营商」半夜12点断我网络,一气之下换了运营商,看看怎么回事
- #外观#李现代言的荣耀30,被iPhoneSE2截胡?怎么选不用我说了吧!
- 小鱼一键重装系统@微软mse杀毒软件怎么样
- [世界]智能AI未来将全面取代人类世界?对此,你怎么认为的?
- #宅女科技范#智能AI未来将全面取代人类世界?对此,你怎么认为的?
- #轻度玩机#李现代言的荣耀30,被iPhoneSE2截胡?怎么选不用我说了吧!
- 『』洗碗机怎么选?米家互联网洗碗机8套容量更适合家用