计算机语言翻译程序如何把一个面向人看懂的由语句变成计算机可执行的二进制代码的呢?纳闷

来源:百度知道 编辑:UC知道 时间:2024/07/08 22:33:02
翻译最根本的原理是什么啊??

高级语言首先需要编译成机器语言(每种高级语言对应一种编译的法则),机器语言就是机器运作的指令,也就是汇编语言,这些指令可以让CPU知道做些什么工作,而所谓这些知道,都是CPU硬件内部定制的;硬件是如何定制这些指令呢?
例如,MOV 参数1,参数2 指令,这个指令是传送的意思,在CPU核心里,这个传送的指令就是通过一些复杂的门电路组成的,这些门电路就根据MOV后面的参数,选通一条通路,将参数2传递到参数1的位置,本身这些参数就是选通路径的条件,因为这些参数的二进制数如一把把钥匙,如1值为开锁,那0值为上锁,如果这些钥匙的值一定,那操作的结果也就一定了;其他所有的指令都是一样,都是CPU内部已经构建的门电路组成的;
这样,如果你理解了指令就是硬件定制的,那么你就好理解计算机如何执行我们编写的高级语言了。

所有语言->汇编语言->二进制代码

万变不离其宗

是你写的高级语言像c、c++、java然后经过编译翻译成汇编语言,也就是机器指令,像MOV DIV GOTO JUMP等等,然后最后把汇编语言翻译成2进制代码,这样是一个流程