2万+  知识点  标题检索     全文检索
       编译程序基本原理
        编译程序的功能是把用高级语言书写的源程序翻译成与之等价的目标程序。编译程序的工作可以分为6个阶段。
        (1)词法分析阶段。这个阶段的任务是对源程序从前到后逐个字符进行扫描,从中识别出一个个单词符号。
        (2)语法分析阶段。语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。通过语法分析,确定整个输入串是否构成一个语法上正确的程序。
        (3)语义分析阶段。语义分析的一个主要工作是进行类型分析和检查。
        (4)中间代码生成阶段。根据语义分析的输出生成中间代码。中间代码的设计原则是:容易生成,容易被翻译成目标代码。中间代码生成所依据的原则是语言的语义规则。
        (5)代码优化阶段。优化所依据的原则是程序的等价变化规则。
        (6)目标代码生成阶段。这是编译工作的最后一个阶段,任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。
        在编译中,如果发现源程序有错,编译程序要将错误信息报告给用户。程序错误大致可以分为静态错误和动态错误两种。静态错误是指编译时所发现的程序错误,又分为词法错误和静态语义错误,如单词拼写错误、标点符号错误、表达式中缺少操作数、括号不匹配等有关语言结构上的错误称为语法错误;而运算符与运算对象类型不匹配等错误属于静态语义错误。动态错误指程序中包含的逻辑错误,它们发生在程序运行时,如变量取零做除数、引用数组下标越界等错误。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2019 All Rights Reserved 软考在线版权所有