- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 翻译原理
“翻译”— 由一对字符串组成的对偶集合。
编译程序 -- 源程序,目标程序
编译过程: 1. 词法分析 -- 字符串,单词
2. 句法分析 -- 单词的字符串,树表示的字符串
3.代码生成 -- 树表示的字符串,机器/汇编语言
定义翻译的两种基本方法: 翻译式;转换器
翻译式: 模仿语言的文法定义方法,定义一个对偶系统(也是一个文法),使在句子的推导过程中,相应于每个句型,同时也推算出其输出句型(翻译句型)。这样,在派生出句子时,也同时产生了其翻译句。
转换器:模仿语言的自动机识别方法,但在自动机的每次动作中,还发送一个有限长度的输出字符串。
$6.1 翻译的形式化
翻译的一般定义
设L1 (T*,L2 (∑*,从L1 到L2 的翻译是从T *→ ∑* 的一个映射关系。
如果对于输入句子x,存在(x, y)在映射H中,则称句子y为x的输出。
注: 一般的翻译可能不止一个输出,但对程序语言的翻译总是单值输出(最多容许一个输出)。
例一:简单翻译 (书P222)
英文小写字母 –〉ASCII码(一一对应)
例二:将中缀表达式翻译为等价的前缀、后缀波兰表达式
中缀: a+b , (a+b)*(c+d)
前缀: +ab , *+ab+cd
后缀: ab+ , ab+cd+*
句法制导(引导)的翻译式
思路:类似于用有限条文法规则导出语言的无限条句子,也可运用有限条文法规则定义由无限个成员组成的翻译.
句法制导(引导)的翻译式:
模仿语言的文法定义来定义一个对偶系统, 使得这些对偶的集合符合给定的翻译要求。
直观的说,“翻译式”(翻译格式)类似于在原文法的每条产生式上粘附着一个“翻译元素”(Translation Element)的文法。
产生式 – 用于推导输出句型
翻译元 – 推算出相应于输入句型的输出句型
例:定义翻译 { (w,w )| w ∈(a, b) *}}
(生成式, 翻译元) 1. (A -- aA, A = Aa ) 2. (A -- bA, A = Ab) 3. (A -- a, A = a) 4. (A -- b, A = b)
类似于句子的推导过程(句型推导),将翻译的推导过程称“翻译型”。
初始翻译型 (A,A)
(aA , Aa )
(abA , Aba )
(abb, bba )
例: 中缀算术表达式到前缀波兰表达式的翻译
(生成式, 翻译元) 1. (S -- S+A, S = +SA) 2. (S -- A, S = A) 3. (A -- A*B, A = *AB) 4. (A -- B, A = B) 5. ( B -- (S), B = S) 6. (B -- i, B = i ) 对于输入串 (i+i)*i, 按最左推导有
初始翻译型 (S,S)
(A, A)
(A*B , *AB )
(B*B , *BB)
( (S)*B , *SB)
( (S+A)*B , *+SAB)
( (A+A)*B , *+AAB)
( (B+A)*B , *+BAB)
( ( i +A)*B , *+ i AB)
( ( i +B)*B , *+ i BB)
( ( i + i )*B , *+ i i B)
( ( i + i )*i , *+ i i i )
定义:句法制导翻译式为五元组H = (N,T, ∑, R , S)
其中:
N 非终结符 T 输入字符集合(终结符),
∑ 输出符号 S 起始符
R 规则的有限集合,形如
A(α,β α∈(N(T)*, β∈(N(∑)*
且β中的非终结符是α中非终结符的一个排列。
如 A ( B(1)aAB(2), B(2)AaB(1)
翻译式H产生的全部翻译的集合为:
((H) = {(x,y) | (S,S)= * (x,y), x∈T*, y∈∑* }
定义6.1.3: 简单句法制导翻译式
设H = (N, T, ∑, R , S)是句法制导翻译式,若对于R中的每个规则A(α,β都有α,β中所有非终结符的排列次序相同,则称H为简单句法制导翻译式。它定义的翻译称为简单句法制导翻译。
例: 规则R是简单句法制导翻译
规则 E -- E(1)*E(2), *E(1)E(2) E -- F, F F -- i, i
$6.2 转换器
转换器实质是一种带输出的自动机。该自动机的输入端在接收到字符串α的同时,在它的输出端能够输出α的翻译β。
有限转换器
定义:有限转换器为六元组, M=(Q, T, ∑,δ, q0, F)
其中:Q 有限状态集合
T 输入字母表,
∑ 输出字母表
q0 初始状态,q0∈Q
F:
您可能关注的文档
- 刑法学讲义素材.doc
- 7、血液透析用制水设备产品注册技术审查指导原则教程.doc
- 刑法学总论练习素材.docx
- 刑法学总论素材.docx
- 7.2.1疾病和有关健康问题的国际统计分类概况教程.doc
- 刑法易错要点素材.doc
- 7.2数据通信基础教程.doc
- 中级专卖管理员20110603-2素材.doc
- 刑法有关知识素材.pptx
- 7-1岗位说明书教程.doc
- 云南省玉溪市行政职业能力测验模拟试题1套.docx
- 公共基础知识江西省新余市选调生考试(行政职业能力测验)综合能力测试题推荐.docx
- 山东省淄博市事业单位招聘考试(职业能力倾向测验)题库新版.docx
- 新疆伊犁哈萨克自治州选调生考试(行政职业能力测验)综合能力测试题附答案.docx
- 公共基础知识浙江省嘉兴市选调生考试(行政职业能力测验)综合能力测试题含答案.docx
- 公共基础知识云南省红河哈尼族彝族自治州选调生考试(行政职业能力测验)综合能力测试题及答案一套.docx
- 公共基础知识广东省茂名市选调生考试(行政职业能力测验)综合能力测试题完美版.docx
- 云南省楚雄彝族自治州行政职业能力测验题库及答案一套.docx
- 公共基础知识甘肃省白银市选调生考试(行政职业能力测验)综合能力测试题带答案.docx
- 公共基础知识重庆市阿坝藏族羌族自治州选调生考试(行政职业能力测验)综合能力测试题及参考答案.docx
文档评论(0)