编程语言-什么是高级语言?

本文介绍了高级编程语言如C++、Java和Python的执行机制。C++通过编译器将源代码转换为机器语言,Java依赖JVM将代码编译为.class文件并由虚拟机执行,而Python则依靠解释器进行即时解释运行。三种语言各有特点,C++和Java需先编译后运行,Python则实现即时解释,提高效率。
摘要由CSDN通过智能技术生成

图片


文章福利:私藏已久的python书籍分享一波,附阅读顺序


高级编程语言’其实也是一个相对的概念(相对于低级语言),他俩的语言特性是相互衬托的。

图片

在上一篇文章  编程语言-什么是低级语言? 中介绍了低级语言的种类及其特性,低级语言的一个很明显的特征就是:执行效率高,编写麻烦(对程序员不友好),那么高级语言自然而然就要取其精华,罢黜糟粕,说人话就是使人们容易的对机器发出干活指令,此时的目标就确定了:实现下图中执行过程

图片

然而上述目标在很早之前就已经实现了,像目前比较常见的C、C++、Java、Python.....这几种高级语言实现思维上各有其特色,简单的说下

C++

C++实现上述的目标方式是有一套自己的编译器,编译器就是将“高级语言”翻译为“机器语言(低级语言)”的程序。简要的说就是

源代码 ---- 编译器 ---- 汇编程序 ---- 操作硬件

当然c++的编译器的这个程序根据实现的细节不同分为多种家族 

  • GCC家族(Cygwin、Mingw32、DJGPP...)
  • MS家族(MSC、MSQC、MSVC...)
  • Borland家族(TC、BC、BCB...)

c++输出:This is a C++ program.

#include <iostream>
using namespace std;
int main()
{cout<<"This is a C++ program.\n";
getchar();
return 0;
}


Java

Java实现上述的目标方式是有JVM(Java Virtual Machine) 俗称Java虚拟机,JVMhi会将Java代码编译转化为符合JVM规范的.class文件(内部为16进制代码),然后JVM再将16进制代码传达给操作系统(大体逻辑是这样)。有关JVM的介绍请查阅 深入理解Java虚拟机 –阅读笔记(连载1) 无关性基石

图片
标题

Python

Python实现上述的目标方式是有其强大的解释器(Interpreter),解释器能够把高级编程语言一行一行直接转译运行。

图片

对比:

c++:c++程序需要写完后再交给g++等编译器再去编译然后运行

Java:同样是要写完后让虚拟机去执行

(好比写完中文后再用翻译软件全文翻译后让他人读懂)

图片

Python:即时解释(编译),效率相比上面两个要高很多,就相当于身边有个翻译官,你说的每句话都实时的翻译成其他语言,同声传译。

图片

高级编程语言让使用者更多的关注程序本身,而不必去刻意关心操作硬件指令的机器码(易编写、维护),这也是高级语言之所以能发展到今天的不败特性。


更多精彩内容请关注 公众号:数据与编程之美

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bearx...

请作者喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值