高级编程语言发展历程
机械语言到高级语言,经过了什么?
经历了不同层次的抽象。
不同的抽象层次,关注点不一样。这和我们常说的分层开发道理一样。
抽象使得我们可以逐步利用低级的工具构建高级的工具,从而解决更高级的问题。
第一阶段:机器语言
早期,计算机的使用者必须用二进制表示的指令编写程序,一般用八进制或十六进制书写,称为机器语言程序。机器语言每一条指令,都必须包含以下四方面(1)操作码。它具体说明了操作的性质及功能。(2)操作数的地址。CPU通过该地址就可以取得所需的操作数。(3)操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中,以便再次使用。(4)下条指令的地址。
第二阶段:汇编语言
以下程序用汇编语言实现打印:"hello world!"
因为机器语言工作量大,且容易出错,到20世纪50年代,出现了符号式程序设计语言,称为汇编语言,程序员可以用ADD,SUB,MUL和DIV等符号分别表示加法,减法,乘法,除法的操作码,并用符号来表示指令和数据的地址。汇编语言程序的大部分语句是和机器指令一一对应的。用户用汇编语言编写程序后,然后由计算机将它翻译成机器语言,然后在计算机上运行。这个翻译过程是通过系统程序员提供的汇编程序实现的。
第三阶段:高级语言
1:面向过程的语言:以c语言为代表
以下程序用c语言实现打印"hello world"
由于汇编语言依赖于特定的指令集,而各个处理器往往有不同的指令集,没有跨平台性,而且编程工作量大且易出错,到20世纪50年代,以c语言为代表的面向过程语言诞生,逐渐成为了主流编程语言。c语言具有以下特点:简洁,具有结构化的控制语句,丰富的数据类型,丰富的运算符,可对物理地址进行直接操作,代码具有较好的可移植性,可生成高质量、目标代码执行效率高的程序。我们熟悉的安卓,ios,其实都离不开c语言,到目前为止,c语言仍然是编写操作系统,和需要超高速度执行程序的首选语言。和汇编类似,首先由计算机将c语言翻译成汇编语言,其次再翻译为机器语言,最后由计算机执行。
高级语言:
高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据)而言。是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。由于早期电脑业的发展主要在美国,因此一般的高级语言都是以英语为蓝本。在1980年代,当东亚地区开始使用电脑时,在日本、台湾及中国大陆都曾尝试开发用各自地方语言编写的高级语言,当中主要都是改编BASIC或专[_a***_]数据库数据访问的语言,但是随着编程者的外语能力提升,现时的有关开发很少。
由于汇编语言依赖于硬件体系,且助记符量大难记,于是人们又发明了更加易用的所谓高级语言。在这种语言下,其语法和结构更类似汉字或者普通英文,且由于远离对硬件的直接操作,使得一般人经过学习之后都可以编程。高级语言通常按其基本类型、代系、实现方式、应用范围等分类。
机器语言:
机器语言(machine language)是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据。
机器码有时也被称为原生码(Native Code),这个名词比较强调某种编程语言或库,它与运行平台相关的部份。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/17070.html