计算机程序与计算机语言

    程序:一组计算机能识别和执行的指令。

    计算机语言

    机器语言:计算机工作基于二进制,从根本上说,计算机只能识别和接受由0和1组成的指令。计算机能直接识别和接受的二进制代码称为机器指令(machine instrcution)。机器指令的集合就是该计算机的机器语言。

    符号语言:为了克服机器语言的缺点人们创造出符号语言(symbolic lannguage),它用一些英文字母和数字表示一个指令。

如:ADD  A,B    (执行A+B=>A,将寄存器A中的数与寄存器B中的数相加,放到寄存器A中)

    计算机并不能直接识别和执行符号语言的指令,需要用一种称为汇编程序的软件把符号语言的指令转换为机器指令。一般,一条符号语言的指令对应转换为一条机器指令。转换的过程称为“代真“或”汇编“,因此,符号语言又称为符号汇编语言(bolic assembler language)或汇编语言(assembler language)。

    汇编语言比机器语言简单好记,但仍难以普及,只在专业人员中使用。

   机器语言和汇编语言是完全依赖与机器的特性的,是面向机器的语言。由于它”贴近“计算机,故称为低级语言(low level language)。

    高级语言:为了克服低级语言的特点,高级语言应运而生。FORTRAN语言是第一个诞生的高级语言。1956年,美国的计算机科学家巴科斯设计出了FORTRAN语言,并首先在IBM公司的计算机上实现应用。由此开创了高级语言时代的到来。FORTRAN语言具有简洁、高效性,是科学和工程计算的主流语言。

计算机也是不能直接识别高级语言的,也要进行”翻译“。用一种称为编译程序的软件把高级语言写的程序(称为源程序(score program))转换为机器指令的程序(称为目标程序(boject program)),然后让计算机执行机器指令的程序,最后得到结果。高级语言的一个语句往往对应多条机器指令。

    高级语言发展阶段

    (1)非结构化的语言。初期的语言属于非结构化的语言,编程风格比较随意,只要符合语法的规则即可,没有严格的规范要求。程序中的流程可以随意跳转。人们往往追求程序执行的效率而采用了许多”小技巧“,使程序变得难以阅读和维护。早期的BASIC,FORTRAN和ALGOL等都属于非结构化语言。

    (2)结构化语言。为了解决以上问题,提出了”结构化程序设计 方法“,规定程序必须由具有良好特征的基本结构(顺序结构、选择结构、循环结构)构成,程序中的流程不允许随意跳转,程序总是由上而下顺序执行各个基本结构。这种程序结构清晰,易于编写、阅读和维护。QBASIC,FORTRAN77和C语言等属于结构化语言,这些语言的特点是支持结构化程序设计方法。

     (3)面向对象的语言。面向对象语言是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。

    

猜你喜欢

转载自blog.csdn.net/weixin_42153776/article/details/80597055