(完整word版)IF-ELSE条件语句的翻译程序设计(LR方法、输出四元式)
目录
1 系统描述(问题域描述) (2)
2 文法及属性文法的描述 (2)
2.1文法 (2)
2.2 属性文法 (2)
3 语法分析方法描述及语法分析表设计 (3)
3.1语法分析方法描述 (3)
3.1.1 LR方法的基本思想 (3)
3.1.2 LR分析器模型 (4)
3.2语法分析表设计 (5)
4中间代码形式的描述及中间代码序列的结构设计 (6)
4.1中间代码形式的描述 (6)
4.2中间代码序列的结构设计 (6)
5 编译系统的概要设计 (6)
6 详细的算法描述 (7)
6.1系统流程图 (7)
6.2算法描述 (7)
7 软件的测试方法和测试结果 (18)
7.1软件的测试方法 (18)
7.2测试结果 (18)
8设计的特点、不足、收获与体会 (21)
8.1特点与不足 (21)
8.2收获与体会 (21)
9 参考文献 (21)
10本科生课程设计成绩评定表 (22)
IF-ELSE条件语句的翻译程序设计(LR方法、输出四元式)
1 系统描述(问题域描述)
对条件语句: if 〈布尔表达式〉then〈赋值语句〉 else 〈赋值语句〉,进行词法,LR(1)语法分析,并根据语法制导翻译方法将条件语句翻译成四元式中间代码形式,最后输出翻译后的四元式代码。
2 文法及属性文法的描述
2.1文法
G[S]: S->CS
S->TS
S->A
C->if E then
T->CS else
T->else
其中,E代表布尔表达式,可由界符()括起来,A代表赋值表达式。在这里E、A都代表终结符,具体的表达式在程序会判断其类型。
2.2 属性文法
S->C S
{S.clain:=merge(C.clain,S.clain)}
S->T S
{S.clain:=merge(T.clain,S.clain)}
S->A
{S.clain:0/* 空链*/}
C->if E then
{backpatch(E.true,nextstat) C.clain:=E.false}
T->C S else
{ q:=nextstat
Emit(‘GOTO’—)
Backpatch(C.clain,nextstat)
银行流水单翻译词汇(汇总)
中国各大银行名称缩写 中国建设银行——CCB(China Constuction Bank) 中国农业银行——ABC(Agricultural Bank of China) 中国工商银行——ICBC(Industrial and Commercial Bank of China) 中国银行——BOC(Bank of China) 中国民生银行——CMBC(China Minsheng Banking Co., Ltd) 招商银行——CMB(China Merchants Bank Ltd) 兴业银行——CIB (Industrial Bank Co., Ltd) 北京市商业银行——已经改名北京银行——BOB(Bank of Beijing) 交通银行——BCM(Bank of Communications) 中国光大银行——CEB(Chian Everbright Bank) 中信银行——(cvbnm` 广东发展银行——GDB(Guangdong Development Bank) 上海浦东发展银行——SPDB/SPDBank(Shanghai Pudong Development Bank) 深圳发展银行——SDB(Shenzhen Development Bank)
中国银行新线借记卡历史交易明细清单 Debit card transaction details history list 交易区间:2012/06/01 至2012/12/01 Trading range: to 打印日期:2012/12/17 打印网点: 11111 打印柜员:33333 Print date: Print branches:Print teller: 账号:1222222222 客户号:9999999 Account number: Customer number: 账户名:王三 Account name: WANG SAN 开户日期:2012/01/04 开户行:88881 Account opening date: Deposit bank: 产品大类:5500 产品子类:1999 Product Line: Subclass: 起息日:2012/01/12 到期日: Value date: Expiry date: 存折号:货币号: Bankbook number: Currency number: 交易日网点交易代码货币号交易金额交易余额摘要Trade date Branches Trade code Currency number Transaction amount Account balance Abstract 交易类别对方账号 Trade type Reciprocal account number
WHILE循环语句的翻译程序设计(递归下降法、输出三地址表示)
课程设计任务书 学生姓名:赵旭林专业班级:计算机0801班 指导教师:陈天煌工作单位:计算机科学与技术学院 题目: WHILE循环语句的翻译程序设计(递归下降法、输出三地址表示)初始条件: 理论:学完编译课程,掌握一种计算机高级语言的使用。 实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)写出符合给定的语法分析方法的文法及属性文法。 (2)完成题目要求的中间代码三地址表示的描述。 (3)写出给定的语法分析方法的思想,完成语法分析和语义分析程序设计。 (4)编制好分析程序后,设计若干用例,上机测试并通过所设计的分析程序。 (5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括: 1 系统描述(问题域描述); 2 文法及属性文法的描述; 3 语法分析方法描述及语法分析表设计; 4 按给定的题目给出中间代码形式的描述及中间代码序列的结构设计; 5 编译系统的概要设计; 6 详细的算法描述(流程图或伪代码); 7 软件的测试方法和测试结果; 8 研制报告(研制过程,本设计的评价、特点、不足、收获与体会等); 9 参考文献(按公开发表的规范书写)。 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试及测试。 周5:撰写课程设计报告。 设计验收安排:设计周的星期五第1节课开始到实验室进行上机验收。 设计报告书收取时间:设计周的次周星期一上午10点。 指导教师签名: 2010年 11月 13日 系主任(或责任教师)签名: 2010年 11月 13日
FOR循环语句的翻译程序设计
目录 1 系统描述 (2) 1.1目的 (2) 1.2设计内容: (2) 1.3翻译过程 (2) 1.4初始条件: (3) 1.5 开发平台 (3) 2文法及属性文法的描述 (3) 3 语法分析表设计 (4) 3.1 LR分析概述 (4) 3.2 LR(0)分析表 (5) 3.3 LR语法分析过程的设计思想及算法 (7) 3.4 翻译方法 (8) 4 中间代码形式的描述及中间代码序列的结构设计 (8) 5简要的分析与概要设计 (9) 6详细的算法描述 (9) 6.1 main函数 (10) 6.2词法分析 (10) 6.3 语法分析 (12) 7 测试方法和测试结果 (13) 7.1测试过程 (13) 7.2 测试结论 (14) 8 研制报告 (14) 8.1研制过程 (14) 8.2本设计的评价 (15) 8.3个人心得体会 (15) 9 参考文献 (16) 本科生课程设计成绩评定表 (17)
FOR循环语句的翻译程序设计 ——LR方法、输出四元式 1 系统描述 1.1目的 通过设计、编制、调试一个FOR循环语句的语法及语义分析程序,加深对语法及语义分析原理的理解,实现词法分析程序对单词序列的词法检查和分析,并且实现对单词序列的语法分析、语义分析以及中间代码生成。 1.2设计内容: 本设计按照要求设计出for语句的简单文法,并使用LR分析法对用户输入的程序进行分析和翻译。 对下列正确的程序输入: for(i=0;i<10;i++) { m=m+i; } 结果程序要对该输入进行词法分析,然后利用LR分析法对词法分析后得到的单词序列进行语法分析,经过语法制导翻译显示出等价的四元式表示的中间代码。 对于错误的程序输入,如: for(i=0;i<10) { m=m+i; } 结果程序要指出程序出错。 1.3翻译过程
各种公司的翻译方法 中国常用词汇汉英对照 中国食物的的英文表述
各种公司的翻译方法中国常用词汇汉英对照中国食物的的英文表述各种公司的翻译方法 一、通称 公司 company, corporation, firm 母公司 parent company 总公司 head office 有限责任公司 company of limited liability 股份公司 joint stock company 私人公司 private company 股票上市公司 listed company 内资公司 domestic-funded company 独资公司 sole-funded company 内股公司 close company 股权公司 holding company 跨国公司 multinational corporation 外国公司 foreign corporation 地方公司 local company 集团公司 group company 子公司 subsidiary company 分公司 branch company 无限责任公司 company of unlimited liability 股份有限公司 company limited (Ltd.) 公营公司 public company 股票发行公司 stock issuing house 外资公司 foreign-funded company 合资公司 joint venture 控股公司 proprietary company 联营公司 affiliated company 跨业公司 conglomerate 国内公司 domestic corporation 离岸公司 offshore company 二、分类 贸易公司 trading/commercial company 外贸公司 foreign trade corporation 运输公司 transport company 航运公司 shipping company 工程公司 engineering company 投资公司 investment company 咨询公司 consulting company 保险公司 insurance company 清算公司 liquidation company 房地产公司 property / real estate company
IF-ELSE条件语句的翻译程序设计(LL(1)法、输出三地址表示) 2
IF-ELSE条件语句的翻译程序设计 1 问题描述 要求用LL(1)自顶向下分析方法及三地址中间代码,对IF-THEN-ELSE条件语句完成编译各阶段过程,包括词法、语法、语义等分析。 2 问题分析及编译系统的概要设计 编译过程一般分为六个阶段的过程,可以由六个模块完成,它们称为词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序,此外,一个完整编译程序还必须包括“表格管理程序”和“出错处理程序”。 这次实验涉及到词法分析、语法分析、语义分析及表格管理和出错管理。其中,词法分析至少要能识别关键字“if”、“then”和“else”,标识符(即自定义变量),数字,和运算符等等;语法分析要分析程序结构的合法性,即是否为文法的句子;语义分析要能够语法制导翻译出中间代码(三地址)并将其输出;表格管理是指符号表;出错处理是指在语法分析时,所有非文法句子的错误类型处理. 3 文法及属性文法的定义 3.1 文法: 文法是用于描述语言的语法结构的形式规则(即语法规则)。这些规则必须是准确的、易于理解的以及有相当强的描述能力。由这种规则所产生的程序语言应有利于句子分析和翻译,而且,最好能通过这些规则自动产生有效的语法分析程序. IF-ELSE条件语句的文法如下所示: 0.A->EB 1.B->+EB|-EB|ε 2.E->FT 3.T->*FT|/FT|ε 4.F->i|(E) 或者能够更简洁一点: 0.S->if A THEN B ELSE C 1.A->m rop n
3.C->x=n arop m 4.rop->=|<|> 5.arop->+|-|*|/ 3.2 属性文法: 属性文法是在上下文无关文法的基础上,为每个文法符号(终结符或者非终结符)配备若干相关的“值”(与文法符号相关的属性)。 在一个属性文法中,对应于每个产生式A→a都有一套与之相关联的语义规则,每规 则的形式为:b:=f(c 1,c 2 ,…,c k )其中f是一个函数,而且或者①b是A的一个综合属性 并且c 1,c 2 ,…,c k 是产生式右边文法符号的属性或者②非终结符既可有综合属性也可有 继属性,文法开始符号的所有继承属性作为属性计算前的初始值。 属性文法为: if(VT[opr]=='=') //{"="判断}; { arr[d][1]=arr_i[opd]; arr[d][0]='='; arr[d][2]=id; arr[d][3]=' '; arr[d][4]=' '; id++; } else if(VT[opr]=='>') //{">"判断}; { arr[d][1]=arr_i[opd]; arr[d][0]='>'; arr[d][2]=id; arr[d][3]=' '; arr[d][4]=' '; id++; }
英语翻译常用词组汇总[1]
英语翻译常用词组汇总 be free from没有……的,不受……影响be identified as…被认为是… be known as被称做……,以……著称be known to为……所熟知 be popular with…受……欢迎 be prepared for对……做好准备 be regarded as被认为是…,被当做是… be satisfied with对……满意,满足于… be second to…次于… be sick of…对…感到厌倦 be used as…被用做… be used to…习惯于… get used to…习惯于… all of a sudden突然 all the time一直,始终 as a rule通常,照例 as far as...be concerned就...而言as to…至于…,关于… at best充其量,至多 before long 不久以后 beyond question毫无疑问 by all means尽一切办法,务必 every now and then时而,偶尔 in itself本质上,就其本身而言 sooner or later迟早,早晚 abide by… 遵守…,信守… agree with与…相一致同意…
be beneficial to… 有利于…,有益于… turn a blind eye to… 对…视而不见 by leaps and bounds飞速地,突飞猛进地 when it comes to一谈到…,就…而论 disagree with… 与…意见不一致不同意… give an opinion on… 对…发表意见 a dapt oneself to…=adjust oneself to…使自己适应于… attribute…to…把…归因于…,认为…是…的结果comment on…评论… concentrate on/upon…集中注意力于… on the contrary与之相反 convince somebody of something使某人确信某事deprive somebody of something剥夺某人某物 in detail详细地 be equipped with…装备有… in essence本质上 to…extent在…程度上 inform. somebody of something通知某人某事 lie in在于… major in主修… in the light of… 按照…,根据… on account of… 因为…,由于… in addition to… 除…之外 on (the/an) average平均,一般来说 on the basis of… 根据…,在…的基础上 at (the) best充其量,至多 on business因公,因事 in any case无论如何,总之
DO-WHILE循环语句的翻译程序设计
课程设计任务书 学生姓名:专业班级: 指导教师:工作单位:计算机科学与技术学院 题目: DO-WHILE循环语句的翻译程序设计(LL(1)法、输出三地址表示)初始条件: 理论:学完编译课程,掌握一种计算机高级语言的使用。 实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)写出符合给定的语法分析方法的文法及属性文法。 (2)完成题目要求的中间代码三地址表示的描述。 (3)写出给定的语法分析方法的思想,完成语法分析和语义分析程序设计。 (4)编制好分析程序后,设计若干用例,上机测试并通过所设计的分析程序。 (5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括: 1 系统描述(问题域描述); 2 文法及属性文法的描述; 3 语法分析方法描述及语法分析表设计; 4 按给定的题目给出中间代码形式的描述及中间代码序列的结构设计; 5 编译系统的概要设计; 6 详细的算法描述(流程图或伪代码); 7 软件的测试方法和测试结果; 8 研制报告(研制过程,本设计的评价、特点、不足、收获与体会等); 9 参考文献(按公开发表的规范书写)。 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试及测试。 周5:撰写课程设计报告。 设计验收安排:设计周的星期五第1节课开始到实验室进行上机验收。 设计报告书收取时间:设计周的次周星期一上午10点。 指导教师签名: 2011年月日 系主任(或责任教师)签名: 2011年月日
DO-WHILE循环语句的翻译程序设计 (LL(1)法、输出三地址表示) 1. 系统描述 1.1 设计目的 通过设计、编制、调试一个DO-WHILE循环语句的语法及语义分析程序,加深对法及语义分析原理的理解,并实现词法分析程序对单词序列的词法检查和分析。 1.2 设计内容及步骤 对循环语句: DO〈赋值语句〉WHILE 〈表达式〉 (1)按给定的题目写出符合自身语法分析方法要求的文法和属性文法描述。 (2)按给定的题目给出语法分析方法的思想及分析表设计。 (3)按给定的题目给出中间代码序列的结构设计。 (4)完成相应的词法分析、语法分析和语义分析程序设计。 (5)编制好分析程序后,设计若干用例,上机测试并通过所设计的分析程序。 2. 文法及属性文法的描述 2.1 文法描述 K -> do L while S L -> SP P -> ;SP | ε S -> iQE E -> TG G -> +TG | -TG | εT -> FR R -> *FR | /FR | εF -> (E) | i Q -> = | < | > 2.2 属性文法的描述
for循环语句的翻译
课程设计任务书 学生姓名:辛波专业班级:计算机0707班 指导教师:彭德巍工作单位:计算机科学与技术学院 题目: FOR循环语句的翻译程序设计(递归下降法、输出四元式) 初始条件: 理论:学完编译课程,掌握一种计算机高级语言的使用。 实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)写出符合给定的语法分析方法的文法及属性文法。 (2)完成题目要求的中间代码四元式的描述。 (3)写出给定的语法分析方法的思想,完成语法分析和语义分析程序设计。 (4)编制好分析程序后,设计若干用例,上机测试并通过所设计的分析程序。 (5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括: 1 系统描述(问题域描述); 2 文法及属性文法的描述; 3 语法分析方法描述及语法分析表设计; 4 按给定的题目给出中间代码形式的描述及中间代码序列的结构设计; 5 编译系统的概要设计; 6 详细的算法描述(流程图或伪代码); 7 软件的测试方法和测试结果; 8 研制报告(研制过程,本设计的评价、特点、不足、收获与体会等); 9 参考文献(按公开发表的规范书写)。 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试及测试。 周5:撰写课程设计报告。 设计验收安排:设计周的星期五第1节课开始到实验室进行上机验收。 设计报告书收取时间:设计周的次周星期一上午10点。 指导教师签名: 2010年 01月 08日 系主任(或责任教师)签名: 2010年 01月 08日
做翻译必须掌握的词汇24个技巧
做翻译必须掌握的词汇24个技巧 1、背单词贵在坚持,就算一天只记10个,如果持之以恒,也是一笔很大的财富。 2、单词遗忘得最快时候是刚开始记忆的前两天,所以说,这三天内,抓紧时间跟它们亲 密接触吧。 3、背单词不要按a-z背,选取核心词汇集中度高的S,T开始记忆。 4、背单词讲究重复次数,而不在乎单位时间,一个单词看十分钟,不如看十次,每次一 分钟。 5、一个单词看4遍,不如听一遍,写一遍,读一遍,再说一遍。 6、背单词不要急功近利,看一次肯定记不住,在不同的时间段不停地刺激对单词的记忆。 7、单词分消极词汇和积极词汇,阅读类词汇属于前者,只需考生能读懂,口语写作类词 汇属于后者,必须会应用。 8、善于利用学习工具,有不错的背单词软件能帮助你记得更快更牢,还能全面提升口语 和听力水平。 9、生活中的词汇积累不要放弃,平时多留心在任何地方出现的单词,很可能就会在雅思 考卷上出现。 10、阅读词汇不要抽离单个来记,放在原文中使用上下语境进行记忆。 11、单词不仅要背,而且要配合语音,这样才能在听力考试中准确辨别单词 12、听力单词要学会总结场景词汇,例如:租房类,银行类等等。 13、记忆听力词汇一定要边听边说,边听边写,不能边听边看,当眼睛和耳朵同时在工作 的时候,眼睛享有优先权,并没有练习到听力的能力。 14、背单词书只会增长阅读类的词汇,听说写类单词要学会按话题分类记忆。 15、平时多看原版文章和书籍,收集与作文各个话题相关的表达,这样才能写出最地道的 西式风格的作文。 16、写作词汇要注意多样性的表达,一个单词要使用其同义词进行替换。 17、写作词汇不盲目追求难词,一篇7分作文中,难词出现7-10个已足够。 18、写作词汇注意准确性的使用,如果不确定是否使用准确,不如不用。 19、积累必备的连接词,在口语和写作中展示逻辑性和结构性。 20、口语词汇要按四大类话题记忆,人物,事件,地点和物品。 21、口语词汇平时要学会积累,看美剧时,随手记下好用又地道的表达。
四级翻译词汇汇总
如何在强化阶段复习翻译,又如何在考试中夺取高分呢?我们认为:词汇和长难句是攻克翻译这座大山的不二法宝。 关注特殊词汇,学习日常生活词语 段落翻译的重点依然是词汇,特别是较为特殊的翻译类词汇,通过样卷分析,建议考生多关注一下和中国节日、历史事件、经济文化、旅游活动、社会发展等相关的词汇。大家可以关注以反映中国社会为主的一些英文杂志和报纸,例如中国日报及其网站。这份报纸的大部分内容确实超越了考生的实际水平,但考生可以学习一些涉及日常生活的词语。每天看看网站中的头条新闻,配合中文新闻的背景,就可以学到很多表达。中国日报网站下面的一个小栏目:language tips,有大量简单实用的双语文章,考生有时间可关注。同时,考生要购进一些难度不大的翻译书籍,注意中英文的切换规则。 写长难句可增加得分点 段落翻译的另一难点就是长难句的攻克,平时加大对长难句的分析,考试中才能写出精彩得分的句型。分析从句比较多的长难句,要找到句子的切分点,切分点主要有两种,一个是直接看到的,即连接词that、which、who、when等等;另外一个是潜在的,即各种动词形式,包括doing、to do(单独使用的)、done等等。 最后,注意做翻译一定要坚持两点,即打草稿和"写"。在头脑中形成的翻译不是翻译,落到纸上,仍然不一定是通顺的句子,所以,每次在做翻译时,一定要坚持把语言写出来,这样才能提
高语言组织能力。同时,长难句的翻译不是一气呵成的,要练习如何打草稿,保证不会因直接誊写出现涂改问题,通过平时的草稿练习,也锻炼下打草稿的清晰程度,避免在誊写时丢掉一些东西。 一、中国经济 企业文化corporate/entrepreneurial culture 企业形象corporate image (Cl); enterprise image 跨国公司cross-national corporation 创业精神enterprising spirit; pioneering spirit 外资企业foreign-funded enterprise 猎头公司head-hunter 假日经济holiday economy 人力资本human capital 航空和航天工业aerospace industry 飞机制造工业aircraft industry 电子工业electronic industry 汽车制造工业car industry 娱乐业entertainment industry 信息产业information industry 知识密集型产业knowledge-intensive industry 国有大中型企业large and medium-sized state-owned
WHILE循环语句的翻译程序设计(简单优先法、输出四元式)
WHILE循环语句的翻译程序设计(简单优先法、输出四元式) 1 需求说明或问题描述 1.1 问题描述 对C++中while循环语句的理解及分析,通过编译中的词法分析、语法分析、语义分析及中间代码生成等编译过程,用简单优先分析法分析并翻译while语句。 1.2 需求说明 1 写出符合给定的语法分析方法的文法及属性文法 2 完成题目要求的中间代码四元式的描述 3 写出给定的语法分析方法的思想,完成语法分析及语义分析程序设计 4 设计若干用例,上机通过测试 2 文法及语法设计 2.1文法及属性文法: 文法G=(V N ,V T ,P ,S) 其中V N={S , B, E, C, A, B, P, T} V T={w, (, ), { ,}, i, ;} P={ S -> w(B){E} E -> C C -> CA C -> A A -> iPA A -> i; P -> +|-|*|/ B -> iTi B-> i T -> >|<|>=|<=|== } 2.2 语法分析方法描述及语法分析表设计 2.2.1 语法分析方法描述: 简单优先分析法是按照文法符号(终极符和非终极符)的优先关系确定句柄的。 基本思想可设计如下,首先根据已知优先文法构造相应优先关系矩阵,并将