计算机语言基础知识

低级语言

在计算机世界中,把用二进制代码表示的计算机能直接识别和执行的指令和数据的集合(程序)称为“机器语言”(面向机器的语言)。

机器语言是唯一一种 CPU 能直接理解并执行的编程语言,用其他语言编写的程序计算机是不能直接运行的,必须先转换成机器语言。

就如同在人类世界中把用 a~z 26 个英文字母组成的语言称为英语一样,在人类世界中,除了英语外,还有汉语、日语、法语等各种不同的语言。在计算机世界中,除了用二进制代码表示的机器语言外,还有汇编语言、BASIC 语言、Pascal 语言、C语言、Java 语言、Visual Basic 语言、PHP 语言、HTML 语言等,以上这些都统称为计算机的程序设计语言。

机器语言是最底层的计算机语言,用机器语言编写的程序都是由 8bit 二进制数构成的。每个 8bit 的二进制数都是有特定含义的指令或数据。可对于人而言,看到的都是 0 和 1 的组合,很难判断各个组合都表示什么。

于是就有人发明了另一种编程方法,根据表示指令功能的英语单词给每一种指令起一个相似的昵称,并用这个昵称来代替表示指令的 0 和 1 的二进制数组合,而数据则用我们更容易接受的十六进制数或十进制数来表示(代码清单2)。这种类似英语单词的昵称叫作“助记符”,我们把这种使用“助记符”的编程语言称为“汇编语言”

用汇编语言编写的程序计算机是不能直接运行的,必须先转换成机器语言。机器语言是唯一一种CPU能直接理解并执行的编程语言。

汇编语言的助记符以及数据和机器语言的二进制代码都是一一对应的,都是针对计算机硬件的,也就是说都是面向机器的语言。不同的计算机硬件(CPU)所用的助记符和二进制代码是不一样的,所以这样的程序其通用性不好,如果把它移植到其他的计算机上就无法正常运行了。我们通常把机器语言和汇编语言称为低级语言。

高级语言

低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。

采用了助记符的汇编语言虽然比机器语言直观且容易理解和记忆,但是由于汇编语言依赖于硬件体系,且助记符量大难记,学习和理解这样的程序依然非常困难,于是人们又发明了更加易用的所谓高级语言。

高级语言是以人类日常语言为基础的一种编程语言,使用一般人易于接受的文字和数学公式来表示(通常是英语),其语法和结构更类似于普通英文。由于高级语言远离对硬件的直接操作,每个人经过学习后都可以编程,且程序具有较高的可读性,以方便对电脑认知比较浅的人也可以大概明白其内容。

我们通常将使用高级语言编写的程序通常称为源代码(Source code)

高级语言并不是特指的某一种具体的语言,而是包括很多编程语言,如流行的 C、C++、C#、Pascal、BASIC、Visual Basic、Java、Python、Lisp、PHP 等等,这些语言的语法、命令格式都各不相同。

用高级语言编写的程序源代码不能直接被CPU识别和执行,必须转换成对应的目标代码(机器语言)才能被识别和执行。对CPU来说母语是机器语言,而转换成机器语言的程序就是本地代码。这种转换过程被称为编译(Compile),如图1所示。

图 1:C语言程序经过编译以后才能被计算机执行

不同高级语言的语法及命令格式都不相同,所以将其转换为目标代码(机器语言)的方式也不一样,每种高级语言都有对应的编译器。比如,常用的C语言编译器(C compiler)有 Turb C、gcc、C-Free、Borland C++、Microsoft Visual C++ 等。

C语言是现今最流行的一种编程语言。要编写 C语言程序通常要在电脑上下载并安装一种 C语言编译器(比如 Turbo C 或 C-Free)。安装好 C 编译器以后就可以使用其提供的编辑器来编写、修改、编译、运行程序以及查看结果。通过编译源代码可以找出程序中的各种错误,如果你拼错了一条命令或者用错了某个符号,C 编译器就会在编译程序时通知你(见图 2)。程序中的错误称为 bug,修正错误称为调试程序(debugging)

posted on 2024-02-19 17:34  EzraPenn  阅读(188)  评论(0)    收藏  举报

导航