计算机语言

 

计算机语言

 

计算机语言

(

也称为程序设计语言

)

是用来书写程序的语言

是人命令计算机完成工作

的工具。每一种语言都规定了一组有确定含义的符号和一组规则。根据规则构成的符号串

的总体就是语言。计算机语言分为机器语言、汇编语言、高级语言和第四代语言。

 

机器语言是机器指令的集合。直接采用机器语言来书写程序是一件非常繁琐而枯燥的

工作

而且容错出错

。用各种字母组合或单词缩写代替相应的机器指令更便于程序设计,

于是产生了汇编语言

它是符号化的机器语言。例如在以

Intel 8086/8088

CPU

的计算机

把整数

1

存入寄存器

AX

的操作

机器指令是

101110000000000100000000

而用汇编

指令写出来则是

MOV AX

1

 

显然

汇编语言比机器语言更直观和容易记忆

它用

MOV

表示“

传送”

ADD

示“

相加”

。当然

计算机不能直接按照这类符号执行相应的操作

,而需要把它们翻译成

相应的机器指令。

这个翻译工作被交给一个被称为“

汇编程序”

的翻译程序来完成。被翻

译的汇编语言程序称为源程序

由汇编程序翻译出的程序称为目标程序

而翻译的过程则

称为汇编。源程序经过汇编得到的目标代码较短

,几乎没有多余的指令,程序的

执行效率

较高

但使用的符号繁多,编写程序繁琐、费时、容易出错

难以维护。图

2.1

表示了汇编

的过程。

 

 

2.1 

 

汇编和汇编程序

 

由于汇编语言和机器语言都依赖于具体的机器

非专业人员使用很困难

。直到产生

级语言以后,程序设计才逐渐大众化。高级语言的表示方法更接近数学方法和自然语言。

源程序

 

目标

 

程序

 

汇编程序

 

C

语言与程序设计

 

·

12

·

 

例如让机器完成求和操作

,并把结果存放到变量

c

中,

用高级语言写作

c=a+b

。用高级语言

书写的程序

不用修改或只作少量修改

就可适用于各种不同的机器。同样的道理

机器

也不能识别高级语言的语句

它也必须经过翻译。一般一条高级语言的语句要翻译成一组

机器指令。这里承担翻译工作的程序被称为“

编译程序”

被翻译的高级语言程序称为源

程序

翻译的结果是一系列机器指令,称为目标程序。图

2.2

表示了编译的过程。

 

 

2.2 

 

编译和编译程序

 

早期的源程序规模较小

编译系统能直接产生机器可以执行的目标程序。随着程序规

模的不断扩大

出现了将程序按结构分段

交由多人分别进行设计和编译的方法。这种方

法不仅生成各段程序的目标模块

还产生连接装配这些模块的有关信息。

 

另外

一些经常使用、能够完成一定功能的规范化程序段被集中起来存放在“

程序库”

当设计人员需要用到某种功能时

可直接使用相应的程序段

而不必重复设计这些代

码。这就需要用到“

连接程序”

它能把多个分别编译得到的目标程序

以及程序中用到

的程序库中的代码

装配成一个完整的可执行程序。

 

因此

一个包括多个程序文件的大项目

通常要对这些程序文件分别进行编译

然后

把这些分别编译产生的目标文件和系统的程序库进行连接

才能最终装配成一个可执行程

序。图

2.3

表示了连接的过程。

 

源程序

1

源程序

2

源程序

n

目标程序

1

目标程序

2

目标程序

n

连接程序

„„

„„

„„

可执行程序

系统

程序库

编译程序

编译程序

编译程序

 

2.3 

 

连接和连接程序

 

一般说来

,高级语言程序经过

编译得到的目标代码较为冗长

执行程序的时间较长,

效率较低。尽管如此

由于高级语言与自然语言和数学语言较为接近

容易被人理解

而得到了广泛的应用。目前已经出现了数百甚至上千种高级语言

它们的语法规则各不相

应用范围也不尽相同。

源程序

 

目标

 

程序

 

编译程序

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值