程序设计基础1

合集下载

《C语言程序设计基础与实训教程》第1章:基础知识

《C语言程序设计基础与实训教程》第1章:基础知识

学习C语言的第一步是了解程序编写与运行的基本原理。
1
代码编辑
使用文本编辑器编写C语言程序代码,保存为以.c为后缀名的文件。
2
编译
通过编译器将C语言源代码翻译成计算机能够执行的低级机器代码。
3
链接Biblioteka 将编译后的目标文件与其他必要的库文件进行链接,生成可执行程序。
数据类型和变量
C语言提供了多种数据类型和变量,用于存储不同类型的数据。
《C语言程序设计基础与 实训教程》第1章:基础 知识
《C语言程序设计基础与实训教程》第1章:基础知识
C语言是一种通用计算机编程语言,被广泛应用于系统软件、嵌入式系统、游 戏开发等领域。
本章将介绍C语言的基础知识,包括程序编写与运行、数据类型和变量、运算 符、表达式和语句、输入和输出函数。
程序编写与运行
整数类型
包括int、short、long等,用于存储整数值。
浮点类型
包括float、double等,用于存储浮点数值。
字符类型
包括char,用于存储单个字符。
其他类型
例如,数组、结构体、枚举等。
运算符
运算符用于对数据进行运算、比较和赋值。
算术运算符
用于执行基本的加减乘除运算,如+、-、*、/。
比较运算符
用于比较两个值的大小关系,如>、<、==、!=。
赋值运算符
用于将值赋给变量,如=、+=、-=。
逻辑运算符
用于在条件语句中进行逻辑操作,如&&、||、!。
表达式和语句
表达式是由运算符和操作数组成的语句片段,用于计算和生成值。
1
算术表达式
由算术运算符和操作数组成,如x+y、a*b。

程序设计基础(一)实验

程序设计基础(一)实验

程序设计基础(一)实验实验一上机操作初步(2学时)一、实验方式:一人一机二、实验目的:1、熟悉VC++语言的上机环境及上机操作过程。

2、了解如何编辑、编译、连接和运行一个C程序。

3、初步了解C程序的特点。

三、实验内容:说明:前三题为必做题目,后两题为选做题目。

1、输出入下信息:*************************Very Good*************************2、计算两个整数的和与积。

3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。

4、在屏幕上显示一个文字菜单模样的图案:=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5、从键盘上输入两个整数,交换这两个整数。

四、实验步骤与过程:五、实验调试记录:实验二简单的C程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌握C语言的数据类型。

2、学会使用C语言的运算符及表达式。

3、掌握不同数据类型的输入输出方法。

三、实验内容:说明:前四题为必做题目,后两题为选做题目。

1、输入r1、r2,求出圆形垫片面积。

2、输入华氏温度h,输出摄氏温度c。

3、从键盘输入一个3位整数,将输出该数的逆序数。

4、输入并运行以下程序,分析运行结果。

#include <stdio.h>void main( ){ int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}5、输入三角形三条边的边长,求三角形的面积。

6、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。

第七章 程序设计基础(1)

第七章 程序设计基础(1)
第七章 程序设计基础
根据下面的税率表,编写程序,当输入任意 根据下面的税率表,编写程序, 工资值时,计算出应缴税费。 工资值时,计算出应缴税费。
P
第七章 程序设计基础
预习
1、循环结构有哪三种形式? 循环结构有哪三种形式? 各种形式在使用上有何区别? 2、各种形式在使用上有何区别?
第七章 程序设计基础
例 7-1 键盘输入命令2 ACCEPT) 键盘输入命令2(ACCEPT)
格式: [<提示信息 提示信息>] <内存变量 内存变量> 格式:ACCEPT [<提示信息>] TO <内存变量> 功能: INPUT,但所接收数据都被当做字符型 字符型。 功能:同INPUT,但所接收数据都被当做字符型。
例 7-3 输出命令( ??) 输出命令(?和??)2 交互式输入命令 等待命令(WAIT) 等待命令(WAIT)
格式: [<提示信息>][TO <内存变量>]; 提示信息>][ 内存变量>] 格式:WAIT [<提示信息>][TO <内存变量>]; <行 >]][TIMEOUT 秒数] [WINDOW [AT <行,列>]][TIMEOUT 秒数] 功能:暂停程序执行并显示提示信息, 功能:暂停程序执行并显示提示信息,当用户按任意键 时继续。 时继续。
结束
第七章 程序设计基础
7.2 程序的控制结构
多分支 当有多种执行方向时,需用多分支判断。 当有多种执行方向时,需用多分支判断。
格式 DO CASE 条件1 CASE 条件1 命令组1 命令组1 ……… 条件n CASE 条件n 命令组n 命令组n [OTHERWISE 命令组n+1 n+1] 命令组n+1] ENDCASE

计算机程序设计基础习题册含答案)

计算机程序设计基础习题册含答案)

《计算机程序设计基础》计算机程序设计基础_基础知识(一) 班级学号 姓名 成绩一、 单选题习题册1.C++源程序文件的默认扩展名为A。

2.A) cpp B) exeC) obj D) lik3.由C++源程序文件编译而成的目标文件的默认扩展名为C。

4.A) cpp B) exeC) obj D) lik5.由C++目标文件连接而成的可执行文件的默认扩展名为B。

6.A) cpp B) exeC) obj D) lik7.编写C++程序一般需经过的几个步骤依次是B。

8.A)编译、编辑、连接、调试B)编辑、编译、连接、调试C)编译、调试、编辑、连接D)编辑、调试、编辑、连接9.程序中主函数的名字为A 。

10.A) main B) MAINC) Main D) 任意标识符11.下面四个选项中,均是不合法的用户标识符的选项的是C。

12.A) A p_o doB)float lao _AC)b-a goto intD)_123 temp INT13.下列变量名中合法的是C。

14.A) B)C)Tom B) 3a66C) _6a7b D) $ABC15.存储以下数据,占用存储字节最多的是 D 。

16.A) 0 B) ‘0’C) “0” D) 0.017.在C++语言中,字符型数据在内存中的存储形式是D。

18.A) 补码 B) 反码C) 原码 D) ASCII码19.若有说明语句:char c =’\072’;则变量c A。

20.A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法,变量的值不确定二、填空题1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。

2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。

3.一条表达式语句必须以__分号_;___作为结束符。

4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。

《程序设计基础》作业一答案(10秋)

《程序设计基础》作业一答案(10秋)

《程序设计基础》作业一答案一、单项选择题1、计算机发展的分代史中通常划分时代的标准是以计算机所采用的___ ___。

AA 逻辑元件B 程序设计语言C 操作系统发展D 硬件运算速度2、当前广泛使用的微型计算机是______。

DA 第一代B 第二代C 第三代D 第四代3、我们将组成计算机系统的所有电子和机械装置称为______。

AA 硬件B 软件C 系统D 机器4、当代计算机的体系结构称为是______。

AA 冯·诺依曼机B 非冯·诺依曼机C图灵机 D PASCAL机5、CPU主要包括______。

AA 运算器、控制器和寄存器B 运算器、控制器和存储器C 控制器D 运算器和存储器6、硬盘是______。

CA 输入设备B 输出设备C 存储设备D 计算设备7、系统软件的核心软件是______。

AA 操作系统B 编译程序C 汇编程序D 机器语言8、下面4句话中,最准确的表述是______。

AA 程序=算法+数据结构B 程序是使用编程语言实现算法C 程序的开发方法决定算法设计D 算法是程序设计中最关键的因素9、计算机能直接执行的语言是______。

AA 机器语言B 汇编语言C 高级语言D 目标语言10、汇编程序的任务是______。

AA 将汇编语言编写的程序转换为目标程序B 将汇编语言编写的程序转换为可执行程序C 将高级语言编写的程序转换为汇编语言程序D 将高级语言编写的程序转换为可执行程序11、世界上第一个高级语言是______。

CA BASIC语言B C语言C FORTRAN语言D PASCAL语言12、下面4种程序设计语言中,不是面向过程式语言的是______。

DA FORTRANB ALGOLC AdaD C++13、下面4种程序设计语言中,不是面向对象式语言的是______。

DA JAVAB Object PascalC DelphiD C14、保存在计算机内存中的信息为______。

一、程序设计基本知识

一、程序设计基本知识

1.1 程序与程序语言1.2.1 程序与程序语言1.计算机语言什么是计算机语言?为什么要使用计算机语言?过去,一提到语言这个词,人们自然想到的是像英语、汉语等这样的自然语言,因为它是人和人相互交流信息不可缺少的工具。

而今天,计算机遍布了我们生活的每一个角落,除了人和人之间的相互交流之外,我们必须和计算机交流。

用什么样的方式和计算机做最直接的交流呢?人们自然想到的是最古老也最方便的方式--语言。

人和人交流用的是双方都能听懂和读懂的自然语言,同样,人和计算机交流也要用人和计算机都容易接受和理解的语言,这就是计算机语言。

人们用自然语言讲述和书写,目的是给另外的人传播信息。

同样,我们使用计算机语言把我们的意图表达给计算机,目的是使用计算机。

计算机语言是根据计算机的特点而编制的,它没有自然语言那么丰富多样,而只是有限规则的集合,所以它简单易学。

但是,也正因为它是根据机器的特点编制的,所以交流中无法意会和言传,而更多地表现了说一不二,表现了"规则"的严谨。

例如该是";"的地方不能写成".",该写"a"的地方不能写成"A",这使得人和计算机的交流在一开始会有些不习惯。

不过,只要认识到计算机语言的特点,注意学习方法,把必须的严谨和恰当的灵活相结合,一切都会得心应手。

2.程序我们知道,计算机是一种具有内部存储能力的自动、高效的电子设备,它最本质的使命就是执行指令所规定的操作。

如果我们需要计算机完成什么工作,只要将其步骤用诸条指令的形式描述出来,并把这些指令存放在计算机的内部存储器中,需要结果时就向计算机发出一个简单的命令,计算机就会自动逐条顺序执行操作,全部指令执行完就得到了预期的结果。

这种可以被连续执行的一条条指令的集合称为计算机的程序。

也就是说,程序是计算机指令的序列,编制程序的工作就是为计算机安排指令序列。

但是,我们知道,指令是二进制编码,用它编制程序既难记忆,又难掌握,所以,计算机工作者就研制出了各种计算机能够懂得、人们又方便使用的计算机语言,程序就是用计算机语言来编写的。

C语言程序设计基础知识 习题一及参考答案

C语言程序设计基础知识 习题一及参考答案

第一章:程序设计基础知识一、单项选择题1、以下( )是面向过程的程序设计语言。

A)机器语言 B)汇编语言 C)高级语言 D)第四代语言2、程序设计一般包含以下四个步骤,其中其中首先应该完成的是( )。

A)设计数据结构和算法B)建立数学模型C)编写程序 D)调试和运行程序3、以下常用算法中适合计算等差级数的算法是( )。

A)枚举法B)递推法 C)分治法 D)排序法4、以下不属于算法基本特征的是( )。

A)有穷性 B)有效性C)可靠性 D)有一个或多各输出5、以下描述中不正确的是( )。

A)程序就是软件,但软件不紧紧是程序。

B)程序是指令的集合,计算机语言是编写程序的工具。

C)计算机语言都是形式化的语言,它有一个语法规则和定义。

D)计算机语言只能编写程序而不能表示算法。

6、下面描述中,正确的是( )A)结构化程序设计方法是面向过程程序设计的主流。

B)算法就是计算方法。

C)一个正确的程序就是指程序书写正确。

D)计算机语言就是编写程序的工具而不是表示算法的工具。

7、下面描述中,不正确的是( )。

A)递归法的关键是必须有一个递归终止的条件。

B)递归算法要求语言具有反复自我调用子程序的能力。

C)对于同一个问题,递推算法比递归算法的执行时间要长。

D)递推算法总可以转换为一个递归算法。

8、N-S图与传统流程图比较,主要优点是( )。

A)杜绝了程序的无条件转移。

B)具有顺序、选择和循环三种基本结构。

C)简单、只管。

D)有利于编写程序。

A)B)C)D)二、填空题1、在流程图符号中,判断框中应该填写的的是________。

(判断条件)2、结构化程序设计是__________应遵循的方法和原则。

(面向过程编程)3、结构化程序必须用__________程序设计语言来编写。

(具有结构化控制语句)4、可以被连续执行的一条条指令的集合称为计算机的________。

(程序)5、只描述程序应该“做什么”,而不必描述“怎样做”的语言被称为________。

2022秋国家开放大学《程序设计基础》形考1-4答案

2022秋国家开放大学《程序设计基础》形考1-4答案

2022秋国家开放大学《程序设计基础》形考1-4答案形考1一、填空题(每空2分,合计80分,如果以附件形式提交,请在答题输入框中输入提示文字”见附件“)1.计算机的五大主要应用领域是科学计算、数据处理、过程控制、计算机辅助教学和人2.总线是连接CPU、存储器和外部设备的公共信息通道。

通常由三部分组成:数据总3.计算机是一类智能机器,这是因为它除了完成算术运算外,还能完成某些逻辑运算。

4.世界上第一台计算机取名为ENIAC。

5.目前制造计算机所采用的电子器件是大规模集成电路。

6.CPU是Central Processing Unit的英文缩写,它主要由运算器、控制器和寄存器3个部分组成。

7.完整的计算机系统是由硬件系统和软件系统两大部分组成的。

8.计算机的硬件系统一般可分为存储器、中央处理器、输入设备和输出设备等几个部分。

9.计算机的存储器分为内存和外存两级。

10.随机存储器和只读存储器的英文缩写分别为RAM和ROM。

11.系统软件是为有效利用计算机的资源、充分发挥计算机的工作潜力、保证正常运行、尽可能方便用户使用计算机而编制的软件。

12.程序是为实现一定功能,用计算机程序设计语言所编制的语句的有序集合。

文档是描述程序设计的过程及程序的使用方法的有关资料。

13.图灵机是计算机的概念模型,奠定了现代计算机的理论基础;冯诺依曼机是计算机的结构模型,奠定了现代计算机的设计基础。

14.高级语言源程序的翻译成机器语言程序一般有两种做法:编译方式和解释方式。

15.按照使用方式,程序设计语言分为交互式语言和非交互式语言;按照应用范围则16.编译程序的核心部分,叫语法分析器,其任务就是检查源程序在语法上是否正确。

二、选择题(每题2分,合计20分)2.当代计算机的最主要的体系结构称为是A。

单选题(2 分) 2分A.冯·诺依曼机B.非冯·诺依曼机C.图灵机D.PASCAL机3.计算机软件是指D。

单选题(2 分) 2分A.计算机程序B.源程序和目标程序C.源程序D.计算机程序及其有关文挡4.计算机能直接执行的语言是A。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Bus)。
“数据总线DB”用于传送数据信息。数据总线是双向三态形式
的总线,即他既可以把CPU的数据传送到存储器或I/O接口等其它部
件,也可以将其它部件的数据传送到CU。数据总线的位数是微型计算机的一个重要指标,通常与微处理的字长相一致。例如Intel 8086微
处理器字长16位,其数据总线宽度也是16位。需要指出的是,数据的
指针类型
计算机的性能指标
1. 字长 字长以二进制位为单位,其大小是CPU能够同时处理的数据的
二进制位数,它直接关系到计算机的计算精度、功能和速度。历史 上,苹果机为8位机,IBM PC/XT与286机为16位机,386机与486机 为32位机,后推出的P III 机为64位的高档微机。
2. 运算速度 通常所说的计算机的运算速度(平均运算速度)是指每秒钟所 能执行的指令条数。一般用百万次/秒(MIPS)来描述。 3. 时钟频率(主频) 时钟频率是指CPU在单位时间(秒)内发出的脉冲数。通常, 时钟频率以兆赫(MHz)为单位。时钟频率越高,其运算速度就越 快。 4. 内存容量 内存一般以KB或MB为单位。内存容量反映了内存储器存储数
答: 程序设计的一般过程分为:问题定义,算法设计,程序编制,调 试运行,文档五个步骤。
11 .面向对象程序设计的基本特征是什么? 答: 面向对象程序设计方法是迄今为止最符合人类认识问题思维过程
的方法,这种方法具有四个基本特征:( 1 )抽象,( 2 )封装, ( 3 )继承,( 4 )多态性。 12 .常见高级语言有哪些? 答: 目前的大部分语言都属高级语言,其中使用较多的有 BASIC ( Visual Basic )、 Pascal ( Delphi )、 FORTRAN 、 COBOL 、 C 、 C++ 、 Java 等。 13.解释执行: 由解释器根据输入的数据当场执行而不生成任何的目标程序 编译执行: 先将源代码编译成目标语言(如:机器语言)之后通过连接程序连接到 生成的目标程序进行执行 A、解释程序
据的能力。存储容量越大,其处理数据的范围就越广,并且运算速度 一般也越快。现在的微型计算机内存配置能够达到128MB,甚至更 高。
总线的带宽:指的是单位时间内总线上可传送的数据量。
总线的位宽:总线的位宽指总线能同时传送的数据位数。
总线的工作频率:工作频率越高,总线工作速度越快,总线带宽越 宽。
总线带宽=总线位宽/8×总线工作频率 MB/s
含义是广义的,它可以是真正的数据,也可以是指令代码或状态信 息,有时甚至是一个控制信息,因此,在实际工作中,数据总线上传 送的并不一定仅仅是真正意义上的数据。
“地址总线AB”是专门用来传送地址的,由于地址只能从CPU 传向外部存储器或I/O端口,所以地址总线总是单向三态的,这与数 据总线不同。地址总线的位数决定了CPU可直接寻址的内存空间大 小,比如8位微机的地址总线为16位,则其最大可寻址空间为2^16= 64KB,16位微型机的地址总线为20位,其可寻址空间为2^20=1MB。 一般来说,若地址总线为n位,则可寻址空间为2^n字节。
程序设计基础
1 .简述常用计算机语言及其程序的执行方式? 答: ( 1 )机器语言,是由若干个 0 和 1 ,按照一定的规则组成的代
码串。用机器语言编写的程序叫做目标程序。计算机可直接识别目 标程序。 ( 2 )汇编语言,它不能直接使硬件工作,必须用一套相应的语言处 理程序去翻译为机器语言后,才能使硬件接受并执行。这种语言处 理程序叫做汇编程序。 ( 3 )高级语言,它必须翻译成机器语言程序后,才能在计算机上运 行。根据翻译方式的不同,高级语言源程序的翻译过程可分为解释 方式和编译方式。 2 .算法和程序有什么相同之处,有什么不同之处? 答: 算法是对解决问题步骤的描述。程序是用计算机语言编制的能完 成特定的功能代码。相同:对问题的描述。不同:一个不可执行, 一个可执行。 3 .什么叫时间复杂度? 答: 时间复杂度:依据算法编制成程序后,在计算机上运行时所消耗 的时间。 4 .什么叫空间复杂度? 答: 空间复杂度:依据算法编制为程序后,在计算机中所占存贮空间 的大小。 5 .什么是结构化程序设计的基本思想? 答: 结构化程序设计的基本思想是采用 “ 自顶向下,逐步求精 ” 的程 序设计方法和 “ 单入口单出口 ” 的控制结构。 6 .“ 编译程序 ” 和 “ 解释程序 ” ,有什么区别? 答: 编译是指将用高级语言编写好的程序 ( 又称源程序、源代码 ) ,经 编译程序翻译,形成可由计算机执行的机器指令程序 ( 称为目标程序 ) 的过程。解释是将高级语言编写好的程序逐条解释,翻译成机器指 令并执行的过程。 7 .程序设计的基本过程是什么? 答: 基本过程是:问题描述、算法设计、代码编制以及调试运行。 8 .为什么需要程序的注释? 答: 注释就是一种很好的文档,并不要求计算机理解它们,但可被读 程序的人理解。注释记录程序设计的说明,保证程序的可读性。 9 .程序设计语言的分类有哪些? 答: 程序设计语言分为三类,机器语言、汇编语言和高级语言。 10 .计算机程序设计的一般过程
当 总线空闲(其他器件都以高阻态形式连接在总线上)且一
个器件要与目的器件通信时,发起通信的器件驱动总线,发出地址和
数据。其他以高阻态形式连接在总线上的器件如果收到(或能够收
到)与自己相符的地址信息后,即接收总线上的数据。发送器件完成
通信,将总线让出(输出变为高阻态)。
◆ 总线的分类
按照功能划分,大体上可以分为地址总线和数据总线。有的
给某个语句序列组成的子程序赋于一个标识符。程序中凡是需要 出现这个语句序列的地方,可以简单的写上该子程序的标识符。这样 完成一个操作的子程序称为过程。过程说明。 39个标准标识符 3个标准常量:false、true、maxint 5个标准类型:integer、real、char、boolean、text 2个标准文件:input、output 17个标准函数:abs、arctan、chr、cos、eof、eoln、exp、ln、odd、 ord、pred、round、sin、sqr、sqrt、succ、trunc 12个标准过程:get、new、pack、page、put、read、readln、reset、 rewrite、unpack、write、writeln、
inc(x,n) 等价于 x:=x+n inc(x) 等价于 x:=x+1 ‘abc’不是字符型数据 实型 整型 字符型 布尔型 标准类型 简单数据类型 有序类型 枚举类型 子界类型 用户定义类型 数组类型 集合类型 记录类型 文件类型 数据类型 结构类型
dec(x,n) 等价于 x:=x-n dec(x) 等价于 x:=x-1
◆ 总线的概念
总线是一种内部结构,它是cpu、内存、输入、输出设备传递
信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相
应的接口电路再于总线相连接,从而形成了计算机硬件系统
在计算机系统中,各个部件之间传送信息的公共通路叫总
线,微型计算机是以总线结构来连接各个功能部件的。
◆ 工作原理
优化和存储分配;第四遍扫描做代码生成。 值得一提的是,大多数的编译程序直接产生机器语言的目标代
码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言 一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最 后产生可执行的机器语言目标文件。
在实际应用中,对于需要经常使用的有大量计算的大型题目,采 用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为 复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题 目或计算简单不太费机时的题目,则多选用解释型的会话式高级语 言,如BASIC,这样可以大大缩短编程及调试的时间。 连接程序(linker)
系统中,数据总线和地址总线是复用的,即总线在某些时刻出现的信
号表示数据而另一些时刻表示地址;而有的系统是分开的。51系列单
片机的地址总线和数据总线是复用的,而一般PC中的总线则是分开
的。
系统总线包含有三种不同功能的总线,即数据总线DB(Data
Bus)、地址总线AB(Address
Bus)和控制总线CB(Control
说明部分
类型说明; VAR 变量说明; FUNCTION 函数说明; PROCEDURE 过程说明; BEGIN 语句;
语句部分
语句; …… 语句 END. 35个保留字 AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,FILE,FOR,FU
函数 在某些程序中,如果一些具有相同功能的程序段在程序的不同位置 多次出现,一般将这些程序段,单独写成子程序。 引入子程序后,可以将较复杂的问题分解成若干较小易处理的子问 题,且更重要的是程序结构清晰、层次分明,增强程序可读性。 前面学过一些标准函数(如abs(x)、sqr(x)等和标准过程(如 readln、write等)。 过程
所谓解释程序是高级语言翻译程序的一种,它将源语言(如 BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一 句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻 一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终 端设备与计算机会话,如在终端上打一条命令或语句,解释程序就 立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行 结果反映到终端,从终端把命令打入后,就能立即得到计算结果。 这的确是很方便的,很适合于一些小型机的计算问题。但解释程序 执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释 并提交执行这一组语句,这就造成很大浪费。 B、编译程序
这是一类很重要的语言处理程序,它把高级语言(如FORTRAN、 COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机 器语言的目标程序,然后再让计算机去执行这个目标程序,得到计 算结果。
编译程序工作时,先分析,后综合,从而得到目标程序。所谓分 析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配 和代码生成。为了完成这些分析综合任务,编译程序采用对源程序 进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一 项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第 一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码
相关文档
最新文档