python语言是编译型语言-解释型语言与编译型语言

本文探讨了编程语言的两大类型——解释型和编译型,解释了它们的工作原理和特点。解释型语言如Java、JavaScript在运行时逐行解释,效率较低但跨平台性好;编译型语言如C++在执行前编译为机器码,效率高但跨平台性较差。此外,文章深入讨论了Java的JVM、字节码和内存管理机制,揭示了Java程序执行的流程和特点。
摘要由CSDN通过智能技术生成

一 定义

1173617-20190312132710816-545045145.png

解释型语言

源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次。

多次解释,多次执行。【每执行一次,便解释一次。】

①程序执行效率:低(一般情况)

②跨平台性:高

③解释器依赖度:高

④形如:Java、JavaScript、Python、VBScript、MATLAB、Ruby等

1173617-20190312134451406-561770518.png

编译型语言

首先将源代码编译生成机器语言,再由机器运行机器码(二进制)。程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。

一次编译,多次执行。

①程序执行效率:高

②跨平台性:差

③编译器依赖度:高

④形如:C、C++、Delphi、Pascal等

1173617-20190312134540573-778976919.png

机器语言

又称"原生码”,一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据。

一条指令就是机器语言的一个语句,它是一组有意义的二进制代码。指令的基本格式如,操作码字段和地址码字段,其中操作码指明了指令的操作性质及功能,地址码则给出了操作数或操作数的地址。

①优点:直接执行,速度快,资源占用少

②缺点:可读性、可移植性差,编程繁杂

③形如:机器码 0000 代表 加载(LOAD)

机器码 0001 代表 存储(STORE)

机器码 000000000000 代表地址为 0 的存储器

机器码 000000010000 代表地址为 16 的存储器

机器码 000000000001 代表地址为 1 的存储器

三 Java语言

遗留问题

1.JDK/JRE

2.JVM

3.Java内存(回收/管理)机制

1173617-20190312162012885-1990441918.png

Java编译>解释>执行[4]

1173617-20190312161810004-144419480.png

Java虚拟机与字节码和源码之间的关系[4]

1173617-20200208235008264-1084731965.png

1173617-20190312155950648-1829891916.png

Java工作原理图

1173617-20190312155127762-2145492999.png

Java虚拟机机理

四 JavaScript语言

test

五 Python语言

test

六 C/C++语言

test

七 参考文献

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值