❶ 编译程序的功能
编译程序的基本功能是把源程序(高级语言)翻译成目标程序。但是,作为一个具有实际应用价值的编译系统,除了基本功能之外,还应具备语法检查、调试措施、修改手段、覆盖处理、目标程序优化、不同语言合用以及人-机联系等重要功能。①语法检查:检查源程序是否合乎语法。如果不符合语法,编译程序要指出语法错误的部位、性质和有关信息。编译程序应使用户一次上机,能够尽可能多地查出错误。②调试措施:检查源程序是否合乎设计者的意图。为此,要求编译程序在编译出的目标程序中安置一些输出指令,以便在目标程序运行时能输出程序动态执行情况的信息,如变量值的更改、程序执行时所经历的线路等。这些信息有助于用户核实和验证源程序是否表达了算法要求。③修改手段:为用户提供简便的修改源程序的手段。编译程序通常要提供批量修改手段(用于修改数量较大或临时不易修改的错误)和现场修改手段(用于运行时修改数量较少、临时易改的错误)。④覆盖处理:主要是为处理程序长、数据量大的大型问题程序而设置的。基本思想是让一些程序段和数据公用某些存储区,其中只存放当前要用的程序或数据;其余暂时不用的程序和数据,先存放在磁盘等辅助存储器中,待需要时动态地调入。⑤目标程序优化:提高目标程序的质量,即占用的存储空间少,程序的运行时间短。依据优化目标的不同,编译程序可选择实现表达式优化、循环优化或程序全局优化。目标程序优化有的在源程序级上进行,有的在目标程序级上进行。⑥不同语言合用:其功能有助于用户利用多种程序设计语言编写应用程序或套用已有的不同语言书写的程序模块。最为常见的是高级语言和汇编语言的合用。这不但可以弥补高级语言难于表达某些非数值加工操作或直接控制、访问外围设备和硬件寄存器之不足,而且还有利于用汇编语言编写核心部分程序,以提高运行效率。⑦人-机联系:确定编译程序实现方案时达到精心设计的功能。目的是便于用户在编译和运行阶段及时了解内部工作情况,有效地监督、控制系统的运行。早期编译程序的实现方案,是把上述各项功能完全收纳在编译程序之中。然而,习惯做法是在操作系统的支持下,配置调试程序、编辑程序和连接装配程序,用以协助实现程序的调试、修改、覆盖处理,以及不同语言合用功能。但在设计编译程序时,仍须精心考虑如何与这些子系统衔接等问题。
❷ PLC程序编译是干什么的
是呀。用梯形图编好,编译时先自动检查语法错误,正确后生成的中间目标代码才能送入PLC。
由PLC中的监控操作系统再解释执行中间目标代码。
❸ 编译程序有哪些主要构成成分它们各自的主要功能是什么
编译过程分为分析和综合两个部分,并进一步划分为词法分析、语法分析、语义分析、代码优化、存储分配和代码生成等六个相继的逻辑步骤。这六个步骤只表示编译程序各部分之间的逻辑联系,而不是时间关系。
编译过程既可以按照这六个逻辑步骤顺序地执行,也可以按照平行互锁方式去执行。在确定编译程序的具体结构时,常常分若干遍实现。对于源程序或中间语言程序,从头到尾扫视一次并实现所规定的工作称作一遍。每一遍可以完成一个或相连几个逻辑步骤的工作。
例如,可以把词法分析作为第一遍;语法分析和语义分析作为第二遍;代码优化和存储分配作为第三遍;代码生成作为第四遍。
反之,为了适应较小的存储空间或提高目标程序质量,也可以把一个逻辑步骤的工作分为几遍去执行。例如,代码优化可划分为代码优化准备工作和实际代码优化两遍进行。
(3)编译系统的主要功能是扩展阅读
从左至右逐个字符地对源程序进行扫描,产生一个个的单词符号,把作为字符串的源程序改造成为单词符号串的中间程序。执行词法分析的程序称为词法分析程序或扫描器。
源程序中的单词符号经扫描器分析,一般产生二元式:单词种别;单词自身的值。单词种别通常用整数编码,如果一个种别只含一个单词符号,那么对这个单词符号,种别编码就完全代表它自身的值了。若一个种别含有许多个单词符号,那么,对于它的每个单词符号,除了给出种别编码以外,还应给出自身的值。
词法分析器一般来说有两种方法构造:手工构造和自动生成。手工构造可使用状态图进行工作,自动生成使用确定的有限自动机来实现。
编译程序的语法分析器以单词符号作为输入,分析单词符号串是否形成符合语法规则的语法单位,如表达式、赋值、循环等,最后看是否构成一个符合要求的程序,按该语言使用的语法规则分析检查每条语句是否有正确的逻辑结构,程序是最终的一个语法单位。编译程序的语法规则可用上下文无关文法来刻画。
❹ 涓涓瀹屾暣镄勮$畻链虹郴缁熷簲鍖呮嫭
D銆佽$畻链虹殑纭浠剁郴缁熷拰杞浠剁郴缁熴
璁$畻链虹郴缁熺敱纭浠剁郴缁熷拰杞浠剁郴缁熺粍鎴愩傝$畻链虹‖浠剁郴缁熸槸鎸囩粍鎴愪竴鍙拌$畻链虹殑钖勭岖墿鐞呜呯疆锛屽畠浠鐢卞悇绉嶅叿浣撶殑鍣ㄤ欢缁勬垚锛屾槸璁$畻链鸿繘琛屽伐浣灭殑鐗╄川锘虹銆傝$畻链虹‖浠剁郴缁熺敱杈揿叆璁惧囥佽緭鍑鸿惧囥佽繍绠楀櫒銆佸瓨鍌ㄥ櫒鍜屾带鍒跺櫒浜旈儴鍒嗙粍鎴愩
镓╁𪾢璧勬枡
璁$畻链虹郴缁熺敱纭浠讹纸瀛愶级绯荤粺鍜岃蒋浠讹纸瀛愶级绯荤粺缁勬垚銆傚墠钥呮槸鍊熷姪鐢点佺併佸厜銆佹満姊扮瓑铡熺悊鏋勬垚镄勫悇绉岖墿鐞嗛儴浠剁殑链夋満缁勫悎锛屾槸绯荤粺璧栦互宸ヤ綔镄勫疄浣撱傚悗钥呮槸钖勭岖▼搴忓拰鏂囦欢锛岀敤浜庢寚鎸ュ叏绯荤粺鎸夋寚瀹氱殑瑕佹眰杩涜屽伐浣溿
镊1946骞寸涓鍙扮数瀛愯$畻链洪梾涓栦互𨱒ワ纴璁$畻链烘妧链鍦ㄥ厓浠跺櫒浠躲佺‖浠剁郴缁熺粨鏋勚佽蒋浠剁郴缁熴佸簲鐢ㄧ瓑鏂归溃锛屽潎链夋侪浜鸿繘姝ワ纴鐜颁唬璁$畻链虹郴缁熷皬鍒板井鍨嬭$畻链哄拰涓浜鸿$畻链猴纴澶у埌宸ㄥ瀷璁$畻链哄强鍏剁绣缁滐纴褰㈡併佺壒镐у氱嶅氭牱锛屽凡骞挎硾鐢ㄤ簬绉戝﹁$畻銆佷簨锷″勭悊鍜岃繃绋嬫带鍒讹纴镞ョ泭娣卞叆绀句细钖勪釜棰嗗烟锛屽圭ぞ浼氱殑杩涙ヤ骇鐢熸繁鍒诲奖鍝嶃
❺ C语言编译程序的功能是(计算机二级考试题)
选D
编译其实就是翻译
把人看的 翻译成机器看的。
其实 A已经算对了
不过 有D 这个更完善。
C程序不是单独编译的,还要加上系统库。