计算机语言只用学一种,学编程,但编程语言有几种知道吗?

很多新手小白一门心思说想学编程,但连人家有几种语言都不知道,这不得了解了解基础的常识?

来,往下看!

0f33815d2a21df1861d82f49a958d187.png

编程语言(programming language)是一种被标准化的交流技巧,用来向计算机发出指令,定义计算机程序,让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动的一种计算机语言。

编程语言原本是被设计成专门使用在计算机上的,但它们也可以用来定义算法或者数据结构。正是因为如此,程序员才会试图使程序代码更容易阅读。

编程语言往往使程序员能够比使用机器语言更准确地表达他们所想表达的目的。对那些从事计算机科学的人来说,懂得程序设计语言是十分重要的,因为在当今所有的计算都需要程序设计语言才能完成。

在过去的几十年间,大量的编程语言被发明、被取代、被修改或组合在一起。尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。之所以有那么多种不同的编程语言存在的原因是,编写程序的初衷其实也各不相同;新手与老手之间技术的差距非常大,而且有许多语言对新手来说太难学;还有,不同程序之间的运行成本(runtime cost)各不相同。

编程语言可以分成汇编语言、脚本语言、机器语言、高级语言三大类。计算机领域已发明了上千不同的编程语言,而且每年仍有新的编程语言诞生。

49078dfbab0a1183068ee7ef87ac3783.png

汇编语言

汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标志符,更容易识别和记忆。它同样需要编程者将每一步具体的操作用命令的形式写出来。汇编程序通常由三部分组成: 指令、 伪指令和 宏指令。 汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作。例如移动、自增,因此汇编 源程序一般比较冗长、复杂、容易出错,而且使用汇编语言编程需要有更多的计算机专业知识,但汇编语言的优点也是显而易见的,用汇编语言所能完成的操作不是一般高级语言所能够实现的,而且源程序经汇编生成的 可执行文件不仅比较小,而且执行速度很快。

脚本语言

215ec287f9f5e40e4468fcc90c090881.png

脚本语言(Script language,scripting language,scripting programming language)是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机 编程语言。此命名起源于一个 脚本“screenplay”,每次运行都会使对话框逐字重复。

早期的 脚本语言经常被称为 批量处理语言或工作控制语言。一个 脚本通常是解释运行而非编译。

虽然许多 脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。几乎所有计算机系统的各个层次都有一种 脚本语言。包括操作系统层,如 计算机游戏,网络应用程序,字处理文档,网络 软件等。在许多方面,高级编程语言和 脚本语言之间互相交叉,二者之间没有明确的界限。

脚本编程速度更快,且 脚本文件明显小于如同类C 程序文件。这种灵活性是以执行效率为代价的。脚本通常是 解释执行的,速度可能很慢,且运行时更耗内存。在很多案例中,如编写一些数十行的小 脚本,它所带来的编写优势就远远超过了运行时的劣势,尤其是在当前 程序员工资趋高和硬件成本趋低时。脚本语言是一种解释性的语言,例如Python 、 vbscript, javascript,installshield script,ActionScript等等,它不象c\ c++等可以 编译成 二进制代码,以 可执行文件的形式存在。

机器语言

由于计算机内部只能接受 二进制代码,因此,用二进制代码0和1描述的指令称为 机器指令,全部机器指令的集合构成计算机的机器语言,用机器语言 编程的程序称为 目标程序。只有 目标程序才能被计算机直接识别和执行。但是机器语言编写的程序无明显特征,难以记忆,不便阅读和书写,且依赖于具体机种,局限性很大,机器语言属于低级语言。

高级语言

高级语言是大多数 编程者的选择。和汇编语言相比,它不但将许多相关的 机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用 堆栈、 寄存器等,这样就大大简化了程序中的指令。同时,由于省略了很多细节, 编程者也就不需要有太多的专业知识。

高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,像最简单的编程语言 PASCAL语言也属于高级语言。

c03ab79da7223e6580c2bca4be62e07e.png

高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:

解释类:执行方式类似于我们日常生活中的“ 同声翻译”,应用程序 源代码一边由相应语言的 解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的 可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。如较早时期的 Qbasic语言。

编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(* .obj,也就是 OBJ文件)才能执行,只有目标文件而没有源代码,修改很不方便。

具体的大类中还有小类,也就是我们所常见的那些语言,包括Python、C++等等,分别属于什么大类,下一篇给大家分享。

举报/反馈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值