欢迎来到天天文库
浏览记录
ID:52719350
大小:49.50 KB
页数:5页
时间:2020-03-29
《太原师范学院编译答案A.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、院<系)_______________专业_______________班级_______________学号_______________姓名_______________………...………………………….密………………………..封…………………………..线……………………………………………………………..太原师范学院2018-2018第一学期期末考试编译原理试卷2、型、作用域,过程参数个数、类型、传递方式、返回值类型等。b5E2RGbCAP⒌后缀表达式、图形表示如语法树、DAG、三地址代码。⒍保留字、标识符、常量、算符、分界符。⒎基础文法、语义动作或语义子程序。⒏正规式、正规文法、DFA/NFA。⒐3、=yp1EanqFDPw⒉公共子表达式删除、复写传播、死代码删除、代码外提、强度削弱、归纳变量删除⒊Chomsky把文法分成四种类型,即0型、1型、2型、3型,区别在于对产生式的不同限制。令文法为G=4、α5、≦6、β7、,除S→ε外;或αAβ→αγβ为其产生式,且α、β不能为空,α、β为其上下文,对应自动机为线性有界自动机,对应语言为上下文有关语言。5PCzVD78、HxA③产生式为A→β,A∈Vn,对应上下文无关文法,对应自动机为下推自动机,对应语言为上下文无关语言④产生式为→aB9、a,其中a∈Vt,对应自动机为NFA、DFA,对应语言为正规语言,对应文法为正规文法。jLBHrnAILg⒋①绝对机器语言程序,装入固定的起始地址,程序可以迅速地编译执行。②可重定位机器语言程序,可装入任意起始地址,内含重定位信息,通过连接装入程序把一组可重定位目标模块连接成可执行目标程序。③汇编语言程序,产生符号指令,利用汇编器的宏机制生成代码。xHAQX74J0X⒌可用表达式数据流方程以表达式集合为论域的正向方程,迁移函数形式为e_genB∪(x-e_killB10、>,边界条件为OUT[ENTRY]=Φ,汇合算符为∩,方程形式为OUT[B]=fB(IN[B]>,IN[B]=∧OUT[P],其中P为B的前驱。初始化条件为OUT[B]=ULDAYtRyKfE5/5迭代算法:输入程序流图及各块的e_genB和e_killB输出除ENTRY外的各块B的IN[B]和OUT[B]OUT[ENTRY]=Φ。For(除了ENTRY块以外的每个块B>OUT[B]=U。While(任意一个OUT出现变化>For(除了ENTRY以外的每个块B>{IN[B]=∩OUT[P];OUT[B]=e_genB∪(IN[B]-e_killB>。}⒍T1=2T2=5T3=S-RT11、4=S+RA=T2*T4T6=T3*T4Zzz6ZB2Ltk五、解读题⒈S→S(*T12、/T>13、T消除左递归S→TS′S′→(*T14、/T>S′15、εT→T(+F16、-F>17、F消除左递归T→FT′T′→(+F18、-F>T′19、εFIRST(S>=FIRST(T>=FIRST(F>={(,id}FOLLOW={*,/}S(>{symtoken。token=getsym(>。If(token∈FIRST(S>>{T(>。S′(>。}Elseerror<);}S′<){symtoken。token=ge20、tsym<);if(token==“*”21、22、token==“/”>{T(>。S′(>}elseif(!(token∈FOLLOW(S′>error(>。}T(>{symtoken。token=getsym(>。5/5If(token∈FIRST(T>>{F(>。T′(>。}Elseerror<);}T′(>{symtoken。token=getsym<);if(token==“+”23、24、token==“-”>{F(>。T′(>}elseif(!(token∈
2、型、作用域,过程参数个数、类型、传递方式、返回值类型等。b5E2RGbCAP⒌后缀表达式、图形表示如语法树、DAG、三地址代码。⒍保留字、标识符、常量、算符、分界符。⒎基础文法、语义动作或语义子程序。⒏正规式、正规文法、DFA/NFA。⒐3、=yp1EanqFDPw⒉公共子表达式删除、复写传播、死代码删除、代码外提、强度削弱、归纳变量删除⒊Chomsky把文法分成四种类型,即0型、1型、2型、3型,区别在于对产生式的不同限制。令文法为G=4、α5、≦6、β7、,除S→ε外;或αAβ→αγβ为其产生式,且α、β不能为空,α、β为其上下文,对应自动机为线性有界自动机,对应语言为上下文有关语言。5PCzVD78、HxA③产生式为A→β,A∈Vn,对应上下文无关文法,对应自动机为下推自动机,对应语言为上下文无关语言④产生式为→aB9、a,其中a∈Vt,对应自动机为NFA、DFA,对应语言为正规语言,对应文法为正规文法。jLBHrnAILg⒋①绝对机器语言程序,装入固定的起始地址,程序可以迅速地编译执行。②可重定位机器语言程序,可装入任意起始地址,内含重定位信息,通过连接装入程序把一组可重定位目标模块连接成可执行目标程序。③汇编语言程序,产生符号指令,利用汇编器的宏机制生成代码。xHAQX74J0X⒌可用表达式数据流方程以表达式集合为论域的正向方程,迁移函数形式为e_genB∪(x-e_killB10、>,边界条件为OUT[ENTRY]=Φ,汇合算符为∩,方程形式为OUT[B]=fB(IN[B]>,IN[B]=∧OUT[P],其中P为B的前驱。初始化条件为OUT[B]=ULDAYtRyKfE5/5迭代算法:输入程序流图及各块的e_genB和e_killB输出除ENTRY外的各块B的IN[B]和OUT[B]OUT[ENTRY]=Φ。For(除了ENTRY块以外的每个块B>OUT[B]=U。While(任意一个OUT出现变化>For(除了ENTRY以外的每个块B>{IN[B]=∩OUT[P];OUT[B]=e_genB∪(IN[B]-e_killB>。}⒍T1=2T2=5T3=S-RT11、4=S+RA=T2*T4T6=T3*T4Zzz6ZB2Ltk五、解读题⒈S→S(*T12、/T>13、T消除左递归S→TS′S′→(*T14、/T>S′15、εT→T(+F16、-F>17、F消除左递归T→FT′T′→(+F18、-F>T′19、εFIRST(S>=FIRST(T>=FIRST(F>={(,id}FOLLOW={*,/}S(>{symtoken。token=getsym(>。If(token∈FIRST(S>>{T(>。S′(>。}Elseerror<);}S′<){symtoken。token=ge20、tsym<);if(token==“*”21、22、token==“/”>{T(>。S′(>}elseif(!(token∈FOLLOW(S′>error(>。}T(>{symtoken。token=getsym(>。5/5If(token∈FIRST(T>>{F(>。T′(>。}Elseerror<);}T′(>{symtoken。token=getsym<);if(token==“+”23、24、token==“-”>{F(>。T′(>}elseif(!(token∈
3、=yp1EanqFDPw⒉公共子表达式删除、复写传播、死代码删除、代码外提、强度削弱、归纳变量删除⒊Chomsky把文法分成四种类型,即0型、1型、2型、3型,区别在于对产生式的不同限制。令文法为G=4、α5、≦6、β7、,除S→ε外;或αAβ→αγβ为其产生式,且α、β不能为空,α、β为其上下文,对应自动机为线性有界自动机,对应语言为上下文有关语言。5PCzVD78、HxA③产生式为A→β,A∈Vn,对应上下文无关文法,对应自动机为下推自动机,对应语言为上下文无关语言④产生式为→aB9、a,其中a∈Vt,对应自动机为NFA、DFA,对应语言为正规语言,对应文法为正规文法。jLBHrnAILg⒋①绝对机器语言程序,装入固定的起始地址,程序可以迅速地编译执行。②可重定位机器语言程序,可装入任意起始地址,内含重定位信息,通过连接装入程序把一组可重定位目标模块连接成可执行目标程序。③汇编语言程序,产生符号指令,利用汇编器的宏机制生成代码。xHAQX74J0X⒌可用表达式数据流方程以表达式集合为论域的正向方程,迁移函数形式为e_genB∪(x-e_killB10、>,边界条件为OUT[ENTRY]=Φ,汇合算符为∩,方程形式为OUT[B]=fB(IN[B]>,IN[B]=∧OUT[P],其中P为B的前驱。初始化条件为OUT[B]=ULDAYtRyKfE5/5迭代算法:输入程序流图及各块的e_genB和e_killB输出除ENTRY外的各块B的IN[B]和OUT[B]OUT[ENTRY]=Φ。For(除了ENTRY块以外的每个块B>OUT[B]=U。While(任意一个OUT出现变化>For(除了ENTRY以外的每个块B>{IN[B]=∩OUT[P];OUT[B]=e_genB∪(IN[B]-e_killB>。}⒍T1=2T2=5T3=S-RT11、4=S+RA=T2*T4T6=T3*T4Zzz6ZB2Ltk五、解读题⒈S→S(*T12、/T>13、T消除左递归S→TS′S′→(*T14、/T>S′15、εT→T(+F16、-F>17、F消除左递归T→FT′T′→(+F18、-F>T′19、εFIRST(S>=FIRST(T>=FIRST(F>={(,id}FOLLOW={*,/}S(>{symtoken。token=getsym(>。If(token∈FIRST(S>>{T(>。S′(>。}Elseerror<);}S′<){symtoken。token=ge20、tsym<);if(token==“*”21、22、token==“/”>{T(>。S′(>}elseif(!(token∈FOLLOW(S′>error(>。}T(>{symtoken。token=getsym(>。5/5If(token∈FIRST(T>>{F(>。T′(>。}Elseerror<);}T′(>{symtoken。token=getsym<);if(token==“+”23、24、token==“-”>{F(>。T′(>}elseif(!(token∈
4、α
5、≦
6、β
7、,除S→ε外;或αAβ→αγβ为其产生式,且α、β不能为空,α、β为其上下文,对应自动机为线性有界自动机,对应语言为上下文有关语言。5PCzVD7
8、HxA③产生式为A→β,A∈Vn,对应上下文无关文法,对应自动机为下推自动机,对应语言为上下文无关语言④产生式为→aB
9、a,其中a∈Vt,对应自动机为NFA、DFA,对应语言为正规语言,对应文法为正规文法。jLBHrnAILg⒋①绝对机器语言程序,装入固定的起始地址,程序可以迅速地编译执行。②可重定位机器语言程序,可装入任意起始地址,内含重定位信息,通过连接装入程序把一组可重定位目标模块连接成可执行目标程序。③汇编语言程序,产生符号指令,利用汇编器的宏机制生成代码。xHAQX74J0X⒌可用表达式数据流方程以表达式集合为论域的正向方程,迁移函数形式为e_genB∪(x-e_killB
10、>,边界条件为OUT[ENTRY]=Φ,汇合算符为∩,方程形式为OUT[B]=fB(IN[B]>,IN[B]=∧OUT[P],其中P为B的前驱。初始化条件为OUT[B]=ULDAYtRyKfE5/5迭代算法:输入程序流图及各块的e_genB和e_killB输出除ENTRY外的各块B的IN[B]和OUT[B]OUT[ENTRY]=Φ。For(除了ENTRY块以外的每个块B>OUT[B]=U。While(任意一个OUT出现变化>For(除了ENTRY以外的每个块B>{IN[B]=∩OUT[P];OUT[B]=e_genB∪(IN[B]-e_killB>。}⒍T1=2T2=5T3=S-RT
11、4=S+RA=T2*T4T6=T3*T4Zzz6ZB2Ltk五、解读题⒈S→S(*T
12、/T>
13、T消除左递归S→TS′S′→(*T
14、/T>S′
15、εT→T(+F
16、-F>
17、F消除左递归T→FT′T′→(+F
18、-F>T′
19、εFIRST(S>=FIRST(T>=FIRST(F>={(,id}FOLLOW={*,/}S(>{symtoken。token=getsym(>。If(token∈FIRST(S>>{T(>。S′(>。}Elseerror<);}S′<){symtoken。token=ge
20、tsym<);if(token==“*”
21、
22、token==“/”>{T(>。S′(>}elseif(!(token∈FOLLOW(S′>error(>。}T(>{symtoken。token=getsym(>。5/5If(token∈FIRST(T>>{F(>。T′(>。}Elseerror<);}T′(>{symtoken。token=getsym<);if(token==“+”
23、
24、token==“-”>{F(>。T′(>}elseif(!(token∈
此文档下载收益归作者所有