‘高等编程措辞’实在也是一个相对的观点(相对付低级措辞),他俩的措辞特性是相互衬托的。
在上一篇文章 编程措辞-什么是低级措辞? 中先容了低级措辞的种类及其特性,低级措辞的一个很明显的特色便是:实行效率高,编写麻烦(对程序员不友好),那么高等措辞自然而然就要取其精华,罢黜糟粕,说人话便是使人们随意马虎的对机器发出干活指令,此时的目标就确定了:实现下图中实行过程
然而上述目标在很早之前就已经实现了,像目前比较常见的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:即时阐明(编译),效率比较上面两个要高很多,就相称于身边有个翻译官,你说的每句话都实时地翻译成其他措辞,同声传译。
高等编程措辞让利用者更多的关注程序本身,而不必去刻意关心操作硬件指令的机器码(易编写、掩护),这也是高等措辞之以是能发展到本日的不败特性。
更多精彩内容请关注 "大众号:数据与编程之美