当前位置:首页 » 编程软件 » 编译程序之间有何关系

编译程序之间有何关系

发布时间: 2024-10-28 15:35:45

编译程序有哪些主要构成成分它们各自的主要功能是什么

编译过程分为分析和综合两个部分,并进一步划分为词法分析、语法分析、语义分析、代码优化、存储分配和代码生成等六个相继的逻辑步骤。这六个步骤只表示编译程序各部分之间的逻辑联系,而不是时间关系。

编译过程既可以按照这六个逻辑步骤顺序地执行,也可以按照平行互锁方式去执行。在确定编译程序的具体结构时,常常分若干遍实现。对于源程序或中间语言程序,从头到尾扫视一次并实现所规定的工作称作一遍。每一遍可以完成一个或相连几个逻辑步骤的工作。

例如,可以把词法分析作为第一遍;语法分析和语义分析作为第二遍;代码优化和存储分配作为第三遍;代码生成作为第四遍。

反之,为了适应较小的存储空间或提高目标程序质量,也可以把一个逻辑步骤的工作分为几遍去执行。例如,代码优化可划分为代码优化准备工作和实际代码优化两遍进行。

(1)编译程序之间有何关系扩展阅读

从左至右逐个字符地对源程序进行扫描,产生一个个的单词符号,把作为字符串的源程序改造成为单词符号串的中间程序。执行词法分析的程序称为词法分析程序或扫描器。

源程序中的单词符号经扫描器分析,一般产生二元式:单词种别;单词自身的值。单词种别通常用整数编码,如果一个种别只含一个单词符号,那么对这个单词符号,种别编码就完全代表它自身的值了。若一个种别含有许多个单词符号,那么,对于它的每个单词符号,除了给出种别编码以外,还应给出自身的值。

词法分析器一般来说有两种方法构造:手工构造和自动生成。手工构造可使用状态图进行工作,自动生成使用确定的有限自动机来实现。

编译程序的语法分析器以单词符号作为输入,分析单词符号串是否形成符合语法规则的语法单位,如表达式、赋值、循环等,最后看是否构成一个符合要求的程序,按该语言使用的语法规则分析检查每条语句是否有正确的逻辑结构,程序是最终的一个语法单位。编译程序的语法规则可用上下文无关文法来刻画。

② 请解释翻译程序和编译程序及二者之间的关系。

解释程序所谓解释程序是高级语言翻译程序的一种,它将源语言(如BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。

编译程序这是一类很重要的语言处理程序,它把高级语言(如FORTRAN、COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。为了完成这些分析综合任务,编译程序采用对源程序进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。在实际应用中,对于需要经常使用的有大量计算的大型题目,采用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题目或计算简单不太费机时的题目,则多选用解释型的会话式高级语言,如BASIC,这样可以大大缩短编程及调试的时间

③ 程序编辑,程序编译,程序连接

编辑,类似于文本编辑,将程序代码输入进去,可以修改,增加,删除
编译,将程序代码按一定规则变换成机器可以识别的可执行代码序列,
连接,将编译的代码序列与必须的启动代码,用到的库文件按规则组合连接成可执行程序

④ 程序语言,操作系统,编译器三者之间有何关系

程序语言,操作系统,编译器三者之间有何关系?

可以理解为程序语言需要在编译器里面进行编译,但是编辑器需要运行在操作系统里
编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的
简单讲,编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言)"的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (piler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)
操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。操作系统的种类很多,各种设备安装的操作系统可从简单到复杂,可从手机的嵌入式操作系统到超级计算机的大型操作系统。目前流行的现代操作系统主要有Android、BSD、iOS、linux、Mac OS X、Windows、Windows Phone和z/OS等,除了Windows和z/OS等少数操作系统,大部分操作系统都为类Unix操作系统。

操作系统和编译器的关系?

操作系统是和硬件的桥梁,所有软件如果要运行,就得在装有操作系统的机器上运行。没有安装操作系统的计算机,是不能运行其它软件的,装上了linux,你才能在它上面安装g, 你可以用g编译各种软件,比如linux版的QQ等,同样你也可以用g编译linux系统软件(因为系统软件也是软件),并把编译好的linux软件放到机器上安装。
当然也可以写个编译器在没有操作系统的机器上编译,但这个编译器就要做很多和硬件打交道的事。至少g是不行的,要运行在操作系统上的。

操作系统有哪几大特征?它们之间有何关系?

说得通俗点 就是一个操作平台 你要是用什么软件或执行什么程序 都需要建立在一个支持的平台上才好发挥出作用
之间 不知你所指是什么

家庭版 专业版 旗舰版 一个比一个功能更全面

关于编译器 操作系统 CPU

是编译器定的... 基本数据类型(VC为例)主类型分类型修饰符占用空间表示范围整形整数形 intshort2字节-32768 ~ 32767long(默认)4字节-231 ~ (231 -1)unsigned short2字节0 ~ 65535

操作系统可以编译高级语言源程序吗

首先你要搞清楚操作系统与编译器的概念,操作系统是一个软件平台,本身没有编译功能。编译器是运行于操作系统上的一个应用程序,只要有人把某种编程语言的编译器移植到这个操作系统上,那么就可以在这个操作系统上编译这种语言。
另外,不知道你说的高级语言是哪些,C++和JAVA之类的算不算?
一般来说,电脑用的操作系统上面,比如windows 和 Linux 都有多编译器,而小型的嵌入式操作系统则少有编译器可以能运行其上。

用户、计算机和程序员三者之间有何关系

用户是使用计算机的,计算机为用户提供服务,而程序员与计算机就像"朋友",可以彼此交流。实现人机对话。一一一个人解答,望采纳。

语言编译器是一种( ) A 系统软件 B 微机操作系统 C 字处理系统 D 源程序

可以先明晰下规则 答案来自hhqq005
编译器:翻译工具,把高级语言源程序翻译为汇编语言源程序,再把汇编源序翻译成目标代码供连接程序使用。
语言:一个规则。例如:C语言,它规定程序入口为main(),和其它规定。并把这些 <规定的集合> 命名为C语言。
TC:一个开发工具,它包括文本编辑器,编译器,连接程序,调试环境等等。TC中的编译器是TCC.EXE文件。
关于汇编:
汇编语言是一个规则,
汇编程序是一个翻译工具
汇编源程序是一个 符合(汇编语言)规则的程序代码
汇编是一个过程,这个过程是汇编程序 把汇编源程序 翻译 为目标代码的过程
对于高级语言:翻译的过程叫做编译,翻译工具叫做编译程序或编译器。
我觉得 这样看的话 是选择A

操作系统和语言程序的关系

操作系统是系统软件,不是编程语言。软件是由编程语言编写。常用的语言如汇编,C,C++,VC,VB,JAVA,DELPHI等。大部分应用程序都应在一定的系统平台(Windows,Unix,LInux)下工作。并不是说一定要有操作系统。否则在60-70年代计算机还有什么用。但是有了操作系统对于人们应用计算机带来了很多便利。至于说编程语言否也需要系统支持。还是那句话,在没有系统前,人们就是用汇编和C语言编写了windows系统!
当然一定的语言要有一定的编译环境,所谓编译环境就是一定的软件集成环境,如要有编辑程序,连接程序,编译程序,解释程序等!而这些程序又需要系统的支持,所以编程语言需要系统支持,只不过并非是windows系统。在这里就我个人认为,只有汇编语言例外。

工作、家庭和亲人三者之间有何关系?

家庭是一群由血缘和婚姻纽带连接起来的人。这些人生活在一个屋顶下,共同开支预算。当然这仅仅意味着理论上的概念,在现实生活中,家庭生活是与周围活跃的社会生活互相联系的,它要受当时经济、政治、文化及人们心理,信仰等变化的影响。无论在世人看来是多么独立的家庭,它实际上多多少少要反映出全部重要的社会现象,而反过来,所谓的“大世界”(即社会生活也必然要赋予家庭中人际关系所具有的特征,例如夫妻,父子关系等等)。
在社会主义所有制的影响下,随着国家对公民家庭物质福利的改善,家庭作为以父亲为首的经济生产个体的职能已经消亡,现在苏联人的家庭关系首先指的是人的关系,而不是指经济关系。苏联人普遍认为,夫妻子女间的情爱和共同利益是他们最关心的方面。
当然,迄今为止,经济在家庭生活中仍然还起着很大作用,它突出表现在家庭的物质利益和家庭成员的自助活动中。社会主义制度确保人与人之间的平等,因此其生活方式的一个重要特点就是夫妻共同管理家庭,共同分担家务劳动。随着时代的变迁,我们对于家庭与社会之间的责任和义务都有重新分配的必要。由于科技事业的发展,在很大程度上解决了苏联人民的衣、食、住、行状况,他们无需再花费更多的精力从事一些琐细的家务劳动,从而把大部份精力和时间投入从事社会性的创造活动。一般说来,家庭的建立和和睦幸福的确需要一定程度的物质条件,可这远远不是决定家庭幸福的唯一绝对因素。为了人们家庭安稳和谐,有必要首先清醒地认识幸福所包含的意义。为此,苏联社会学家V·波耶柯进行了测试,他把调查结果分为三类:
1.物质因素:一套公寓和物质福利优厚。
2.人的因素:夫妻间的相互理解,如对孩子的看法,有信心建立牢固的婚姻,共同的兴趣等。
3.其它因素:令人满意的工作,文化程度,好职位,社交范围等。
被调查的3220个列宁格勒市民中,有一半的人认为家庭幸福首先取决于夫妻间的理解,然后才谈得上其它因素。这次调查结果与苏联社会学家Z·杨柯夫1978——1979年与苏联《劳动妇女》杂志编辑部所做的调查一样,不论男女公民,在确定自己的家庭关系时都首先考虑相互的理解和体贴,双方互相尊重,第二是要能共同承担养育子女的义务,但是,由于男女生理,心理特征的差异,使女性比男性更为强调理解和信任的重要性,至于家庭之外的其它因素,男女均认为有一个满意的工作是必要的前题,女性侧重双方共度余暇,积极参加旅游,社交是巩固婚姻纽带有效的办法;男性更为珍视自我意识,行动自由和在社会上的个人名望及地位。
摘自网络
这样,由于男女愿望的差异和家务劳动,家庭生活所形成的独特性,就使得家庭成员之间必须了解自己在家庭生活中应该扮演的角色,及所需承担的义务。而家庭成员怎样成功地处理好家务琐事,家庭关系又反映出其所处社会的成熟和完善程度。社会学家认为:一个完美幸福的家庭,既要满足其成员间婚姻和伴侣的本能的原始要求,又要使他们在自己子女身上体现出父爱或母爱,而与此同时通过大量日常共同的家务琐事渐渐获得正确处理夫妻关系的经验,从而去理解家庭幸福和爱情的更深的层次。
一对和睦相爱的夫妇所关心的不仅仅是自己,而是对方的需要,这样又提高了自己在爱人眼里的价值,取得了他或她的尊敬。跟潘约诺夫夫妇一样,成千上万和睦的男女由于共同的生活目标,共同的企望密切地联系起来,使他们能和衷共济,屡经磨砺而不动摇婚姻家庭的基石。社会主义制度下这样珍惜爱情,互相关心,爱抚下一代的夫妻关系正是现代苏联人生活的楷模。

⑤ 编译程序是什么意思编译是什么意思

编译程序(Compiler,compiling program)也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。

解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。

(5)编译程序之间有何关系扩展阅读:

结构:

编译过程分为分析和综合两个部分,并进一步划分为词法分析、语法分析、语义分析、代码优化、存储分配和代码生成等六个相继的逻辑步骤。这六个步骤只表示编译程序各部分之间的逻辑联系,而不是时间关系。

编译过程既可以按照这六个逻辑步骤顺序地执行,也可以按照平行互锁方式去执行。在确定编译程序的具体结构时,常常分若干遍实现。对于源程序或中间语言程序,从头到尾扫视一次并实现所规定的工作称作一遍。每一遍可以完成一个或相连几个逻辑步骤的工作。

可以把词法分析作为第一遍;语法分析和语义分析作为第二遍;代码优化和存储分配作为第三遍;代码生成作为第四遍。反之,为了适应较小的存储空间或提高目标程序质量,也可以把一个逻辑步骤的工作分为几遍去执行。

⑥ 什么是编译程序和汇编程序

分类: 电脑/网络
问题描述:

什么是编译程序和汇编程序?他们有什么区别?和机器语言、高级语言汇编语言有什么样的联系

解析:

用汇编语言或高级语言编写的程序,必须先送入计算机,经过转换成用机器语言表示的目标程序(这个过程即编译),才能由计算机执行。执行转换过程的程序叫编译程序。汇编程序是指没有编译过的汇编语言源文件。

编译程序转换过的叫目标程序,也就是机器语言。

编译程序的工作情况有三种:汇编型、解释型和编译型。汇编型编稿册译程序用来将汇编语言编写的程序,按照一一对应的关系,转换郑斗成用机器语言表示的程序。解释型编译程序将高喊敬磨级语言程序的一个语句,先解释成为一组机器语言的指令,然后立即执行,执行完了,取下一组语句解释和执行,如此继续到完成一个程序为止。用解释型编译程序,执行速度很慢,但可以进行人和计算机的"对话",随时可以修改高级语言的程序。BASIC语言就是解释型高级语言。编译型编译程序将高级语言编写的程序,一次就会部翻译成机器语言表示的程序,而且过程进行很快,在过程中,不能进行人机对话修改。FORTRAN语言就是编译型高级语言。

热点内容
面向接口编程的理解 发布:2024-10-28 18:18:56 浏览:596
服务器存储备份 发布:2024-10-28 18:15:59 浏览:788
解压整理 发布:2024-10-28 18:10:57 浏览:696
在线源码转换 发布:2024-10-28 18:03:07 浏览:882
吃鸡ios系统怎么转安卓系统 发布:2024-10-28 17:48:31 浏览:411
ftp源码怎么发 发布:2024-10-28 17:09:36 浏览:837
解压玩假水 发布:2024-10-28 17:09:31 浏览:179
我的世界神奇宝贝服务器推荐电脑版 发布:2024-10-28 17:09:30 浏览:781
360借贷为什么提醒服务器繁忙 发布:2024-10-28 17:07:06 浏览:930
加密移动硬盘盒评测 发布:2024-10-28 17:07:04 浏览:797