什么是编程语言?

已发表: 2022-10-20
显示编程语言行的计算机屏幕的特写。
复古色调/Shutterstock.com
编程语言是人们在开发软件时用来告诉计算机该做什么的语言。 它们有多种形式,但大多数编程语言都依赖于将人类可读语言翻译成二进制的解释器,以便计算机可以将指令付诸行动。

计算机及其程序的基础是编程语言,这些看起来怪异的代码行可能会让你仅仅看着它们就感到头疼。 但是什么是编程语言,它们是如何工作的?

什么是编程语言?

简而言之,编程语言是计算机程序员与设备“对话”的方式。 如果您知道如何“说”其中一种语言(有数百种),您就可以创建一个可以执行任务的程序。 这些范围可以从非常简单的脚本(例如将文件从一个地方移动到另一个地方的脚本)到非常复杂的(例如在视频游戏中渲染 3D 世界)。

什么是二进制,为什么计算机使用它?
相关什么是二进制,为什么计算机使用它?

编程语言是我们可以用计算机做复杂事情的原因。 从本质上讲,计算机仍在使用二进制(也称为机器语言)运行,在该系统中,零和一决定了计算机的工作和方式。 您可以将编程语言视为该核心之上的一层,因此人类不需要将零切换为一并再次切换回来。

这是一件非常好的事情:如果我们仍然必须使用二进制程序进行编程,那么即使是创建一个简单的脚本也需要很长时间。 高级程序可能永远不会完成,因为在正确的宫殿中获得所有的 1 和 0 会占用大量人员。 编程语言虽然难以学习和使用,但其核心是节省劳动力的设备。

语言水平

粗略地说,编程语言分为两类:低级语言和高级语言。 低级语言之所以被称为是因为它们与机器“接近”,因此可以直接与机器对话。 这包括机器语言和汇编语言,它们是从二进制文件中删除的编程语言。

高级语言比低级语言高出一步。 它们离机器更远,但人类可读。 在这种情况下,“可读”意味着如果您了解所讨论的语言,您可以查看几行代码并弄清楚发生了什么。 这也适用于其他方式:您可以输入命令,然后由机器执行。

口译语音

也就是说,应该注意的是,编程并不像那样直接。 用高级语言输入命令时,您并没有告诉设备该做什么。 相反,您正在与所谓的解释器交谈,该程序是将命令转换为二进制的语言的一部分。 你告诉解释器你想要什么,它反过来告诉计算机你说什么,但是用机器语言。

解释器在您和机器之间架起了一座桥梁,每种语言都有不同的解释器。 汇编语言有点奇怪,因为它们的命令也需要被解释,但是它们使用所谓的汇编器而不是解释器,因为它们的命令与“纯”机器语言更接近,因此不需要完整的翻译。

解释器是一项挑剔的技术:需要以某种方式与它交谈,它才能完成告诉计算机如何移动零和一的工作。 与其说“让蓝色框转到右上角”,不如输入解释器能够理解的一行代码,这取决于编程语言。 然后解释器接受这个输入并告诉计算机要做什么。

什么是无代码,它是技术的未来吗?
相关什么是无代码,它是技术的未来吗?

由于自然语言对于计算机和解释器来说太难理解了——这可能会随着无代码革命而改变——我们使用编程语言,解释器和人类都可以理解的语言。 然后解释器将其转译成机器语言,创建一个小的菊花链。

编程语言如何工作

选择“语言”这个词也不是偶然的:就像人类语言一样,编程语言有内部规则来防止一切偏离轨道。

就像人类语言一样,编程语言将具有语法,一组关于词序和词使用的规则。 例如,在英语中,您可以说“加里给了弗雷德一本书”。 在这句话中,您确切地知道谁给了什么以及给了谁; 换个词,你会得到一个不同的句子:“弗雷德给了加里一本书。” 这仍然是有道理的,但如果你说“给 Gary Fred 的一本书”,我们手头就有问题了。

编程语言也不例外:正确的位需要放在句子的正确位置——通常称为“行”——才有意义。 只是编程语言使用不同的方式来表达自己。

做做

有些东西是一样的:例如,许多编程语言都会使用动词。 在通常被认为是最容易学习的语言之一的 Python 中,您可以告诉它print一行文本。

 打印(“你好,世界”)

在这种情况下,屏幕上会弹出“Hello, world”字样。 自然地,命令会比这复杂得多。 大多数语言都有大量可用于执行各种动作的动词。

什么是 Python?
相关什么是 Python?

当然,并不是所有的东西都一眼就能看出来:你会遇到的大部分代码都有大量的符号和标点符号,你不会在日常讲话中使用。 但是,一旦您了解它们,它们就没有您想象的那么奇怪。

在人类语言中,我们可以使用不同的词来表示不同的事物。 例如,在英语中,我们用“it”表示对象,用“she”或“he”表示人。 如果你切换这些,一个句子就会分崩离析。 编程语言并没有太大的不同:方括号和圆括号只是表示不同的动作类别。 切换它们,句子就会分崩离析。

自然,这些东西也可以在不同的语言中发生变化:Python 中的括号所做的事情与 Lisp 中的完全不同,这又与 C 不同。就像在人类语言中一样,用途和意义可以改变,使某些语言在某些事情上做得更好相对于其它的。

您应该学习哪种编程语言?

那么哪种语言最适合开始学习呢? 不同语言的粉丝之间有很多——我们确实是说很多——关于每种语言能做什么和不能做什么以及哪种语言最好的争论。 但结果是,哪种语言最好真的取决于所讨论的程序员。 就像人类语言一样,你的观点受到你的思维模式以及对你来说自然有意义的东西的影响。

如果你想成为少数可以与机器“对话”并让它们做你想做的事情的人之一,你可以看看 Python,它以易于学习着称。 如果您想要更多的挑战,您可以查看 C,它是大多数操作系统的基础。 无论您选择哪种方式,开始像程序员一样思考都会很有趣。

相关:使用这些很棒的应用程序和网站学习编码