菜单
  

    编译器将原始程序作为输入,翻译产生目标语言的等价程序。原始程序一般为高级语言编写,一个现代的编译器的主要工作流程如下:源代码→预处理器→编译器→汇编程序→目标代码→链接器→可执行文件[1]。其中编译器的主要工作包括词法分析、语法分析、语义分析、和目标代码的生成。

    如同不同的程序设计语言一样,也存在着各种各样的编译程序,根据用途或侧重面,大致可以把编译程序分成如下几类[2]:

    诊断型编译程序:此类编译程序专门设计用来帮助开发人员开发与调试程序,诊断程序只在程序开发的初始阶段使用,当程序已接近完成或完成时,其相应目标程序中不应该再包含诊断用代码。

    优化型编译程序:此类编译程序专门设计出来产生高功效的机器代码,其代价是增加编译程序复杂性和编译时间。功效指时空功效,即期望目标程序占用的存储空间少,而运行时间短。

    可重定目标编译程序:通常一个编译程序是为一个特定的程序设计语言和一种特定的目标计算机而设计的,从源程序编译生成的目标程序只能在某种特定计算机上运行,而另一种架构的机器无法运行,可重定目标型编译程序是易移植的编译程序。

    交叉型编译程序:编译程序在一种型号计算机上运行,却生成另外一种型号计算机运行的目标程序。

    增量型编译程序:增量型编译程序发现源程序错误时,仅从源程序错误修改附近的正文开始重新编译。

    应用并行技术的编译程序:此编译程序能够处理并行和通信成分,实现共享变量、消息传递和同步等。

    1.2 关于程序设计语言

    在计算机领域里,程序是指一系列指令或语句,它规定了依次要进行的一系列工作,由计算机执行特定的指令或语句序列以获得某种预期的效果。程序设计语言是用来书写计算机程序的语言,它可以是与具体计算机特性紧密相关的低级语言,如各种特定计算机的机器语言与汇编语言,也可以是接近日常用语与数学表示法的高级语言。用户可以根据应用领域实际问题的特定情况,选择合适的程序设计语言,如用于工程计算的Fortran,用于教学和科学计算的Pascal,用于开发系统或嵌入式产品的C,等等。

    一般程序语言的定义涉及语法、语义、语用、和语境四个方面[2]:源'自:751:"论-文'网www.751com.cn

    语法:语法是指如何由程序设计语言基本符号组成程序中各个语法成分(包括程序)的一组规则,其中由符号(单词)构成语法成分的规则为一般的语法规则,而由基本符号构成符号(单词)的书写规则称为词法规则。语法规则可用形式的方式描述,也可用语法图这样的非形式的方式描述,甚至口语方式描述。

    语义:语义是程序设计语言中按语法规则所构成的各个语法成分的意义。一个程序执行的效果说明了该程序的含义,也就是程序的语义。程序的语义取决于相应程序设计语言各种语法成分的语义定义,即取决于程序设计语言的语义。语义又分为静态语义和动态语义,静态语义指编译时刻可确定的语法成分的含义;运行时刻才能理解与确定的含义称动态语义。语义通常用非形式的口语方式来定义。

    语用:语用表示语言符号及其使用者之间的关系,设计符号的来源、使用和影响。对于程序设计语言,语用表示程序和使用者之间的关系。在程序中往往用注解形式解释某些变量的物理意义与用途等。

    语境:语境是指理解与实现程序设计语言的环境,这种环境包括编译环境和运行环境。

  1. 上一篇:ASP.NET+SQLServer生命教育网的设计+源代码
  2. 下一篇:C#+Sqlserver在线五子棋的设计+源代码
  1. 基于MATLAB的图像增强算法设计

  2. jsp+sqlserver高校二手商品交...

  3. 基于Kinect的手势跟踪与识别算法设计

  4. JAVA基于安卓平台的医疗护工管理系统设计

  5. java+mysql设备监控记录的大...

  6. 基于核独立元分析的非线...

  7. 基于Hadoop的制造过程大数据存储平台构建

  8. 电站锅炉暖风器设计任务书

  9. 十二层带中心支撑钢结构...

  10. 酸性水汽提装置总汽提塔设计+CAD图纸

  11. java+mysql车辆管理系统的设计+源代码

  12. 当代大学生慈善意识研究+文献综述

  13. 乳业同业并购式全产业链...

  14. 中考体育项目与体育教学合理结合的研究

  15. 杂拟谷盗体内共生菌沃尔...

  16. 大众媒体对公共政策制定的影响

  17. 河岸冲刷和泥沙淤积的监测国内外研究现状

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回