不论是
机器语言还是汇编语言都是面向硬件的具体操作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的
计算机语言。这种与自然语言相近并为计算机所接受和执行的
计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或
解释程序,则用该高级语言编写的程序就可以通用。
计算机并不能直接地接受和执行用高级语言编写的
源程序,
源程序在输入计算机时,通过“
翻译程序”翻译成
机器语言形式的
目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即
编译方式和解释方式。
编译方式是:事先编好一个称为
编译程序的
机器语言程序,作为
系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的
目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:
源程序进入计算机时,
解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生
目标程序。PASCAL、 FORTRAN、COBOL等高级语言执行编译方式;
BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级
程序设计语言。每一种高级(
程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件
功能相分离(彻底脱离了具体的
指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植。