解释型语言与编译型语言
一 定义
解释型语言
源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次。
多次解释,多次执行。【每执行一次,便解释一次。】
①程序执行效率:低(一般情况)
②跨平台性:高
③解释器依赖度:高
④形如:Java、JavaScript、Python、VBScript、MATLAB、Ruby等
编译型语言
首先将源代码编译生成机器语言,再由机器运行机器码(二进制)。程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。
一次编译,多次执行。
①程序执行效率:高
②跨平台性:差
③编译器依赖度:高
④形如:C、C++、Delphi、Pascal等
机器语言
又称“原生码”,一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据。
一条指令就是机器语言的一个语句,它是一组有意义的二进制代码。指令的基本格式如,操作码字段和地址码字段,其中操作码指明了指令的操作性质及功能,地址码则给出了操作数或操作数的地址。
①优点:直接执行,速度快,资源占用少
②缺点:可读性、可移植性差,编程繁杂
③形如:机器码 0000 代表 加载(LOAD)
机器码 0001 代表 存储(STORE)
机器码 000000000000 代表地址为 0 的存储器
机器码 000000010000 代表地址为 16 的存储器
机器码 000000000001 代表地址为 1 的存储器
三 Java语言
遗留问题
1.JDK/JRE
2.JVM
3.Java内存(回收/管理)机制
Java编译>解释>执行[4]
Java虚拟机与字节码和源码之间的关系[4]
Java工作原理图
Java虚拟机机理
四 JavaScript语言
test
五 Python语言
test
六 C/C++语言
test
七 参考文献
[1] 百度百科 - 编译型语言
[2] 百度百科 - 解释型语言
[3] 百度百科 - 机器语言
[4] Java到底是编译型语言还是解释型语言? Ans:高级解释型语言
本文链接: https://www.cnblogs.com/johnnyzen
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!