更新时间:2022年09月13日17时40分 来源:传智教育 浏览次数:
计算机擅长接受指令,但不能识别人类的语言,人类为保证计算机可以准确地执行指定的命令,需要使用计算机语言向计算机发送指令。计算机语言是用于编写计算机指令,即编写程序的语言,其本质是根据事先定义的规则编写的预定语句的集合。计算机语言分为3类:机器语言、汇编语言和高级语言。
机器语言是由0、1组成的二进制代码表示的指令。这类语言可以被CPU直接识别,具有灵活、高效等特点。但机器语言有个不可忽视的缺点:可移植性差。各公司生产的不同系列、不同型号的计算机使用的机器语言是不同的,编程人员使用机器语言为一台计算机编写程序之前必须先熟记此台计算机的全部指令代码和代码的含义,写出的程序只能在同一款机器中使用,且不直观、容易出错,错误又难以定位。一段表示两个整数相加的机器指令如下所示:
0001 1111 1110 1111 0010 0100 0000 1111 0001 1111 1110 1111 0010 0100 0001 1111 0001 0000 0100 0000 0001 0001 0100 0001 0011 0010 0000 0001 0010 0100 0010 0010 0001 1111 0100 0010 0010 1111 1111 1111 0000 0000 0000 0000
机器语言是第一代编程语言,早期的计算机语言只有机器语言,但如今已罕有人学习和使用。
汇编语言用带符号或助记符的指令和地址代替二进制代码,因此汇编语言也被称为符号语言。使用汇编语言编写实现两个整数相加的程序,具体代码与说明如表1-1所示。
表1-1汇编代码示例与说明
表1-1所示的每一条汇编指令对应前面所示的机器语言编写的一行代码。与机器语言相比,汇编语言的可读性有所提高,但汇编语言是一种面向机器的低级语言,是一种为特定计算机或同系列计算机专门设计的语言。换言之,为一种设备编写的汇编指令只能用于和此台设备同系列、具有同型号CPU的设备中,可移植性仍然很差,对编程人员的要求仍然较高。但也正因为汇编语言与机器的相关性,它可以较好地发挥机器的特性。此外,汇编语言保持了机器语言的优点,它也可以直接访问和控制计算机硬件,占用内存少,且执行速度快。
汇编语言是第二代编程语言,在某些行业和领域中,汇编语言是必不可少的语言;对底层程序设计人员而言,汇编语言是必须了解的语言。需要注意的是,汇编语言无法被计算机识别,在执行之前需要先使用被称为“汇编程序”的特殊程序将汇编语言代码翻译成机器语言代码。
由于与硬件相关性较高,且符号与助记符量大又难以记忆,编程人员在开发程序之前需要花费相当多精力去了解、熟悉设备的硬件,以及目标设备的助记符。为了从硬件中脱身,专注程序功能的研发,提高程序开发效率,一些编程人员开始研究高级语言。高级语言与设备硬件结构无关,它更接近自然语言,对数据的运算和程序结构表述得更加清晰、直观,人们阅读、理解和学习编程语言的难度也大大降低。高级语言并非一种语言,而是诸多编程语言的统称。常见的高级语言有Python、C、C++、Java、JavaScript、PHP、Basic、C#等。例如Python语言中,实现两个整数相加的代码具体如下:
num1 = int(input("加数:")) # 从键盘获取内容后转换为整型,存入num1 num2 = int(input("被加数:")) # 从键盘获取内容后转换为整型,存入num2 result = numl + num2 # 计算numl+num2,并将结果存入result print (result) # 将结果result打印到屏幕
比较以上Python代码与汇编代码,显然Python代码更加简洁直观。此外高级语言的可移植性较好,程序开发人员在某一系列设备中使用高级语言编写的程序,可以方便地移植到其他不同系列的设备中使用。