컴파일러 Chapter02
- 최초 등록일
- 2014.06.07
- 최종 저작일
- 2014.06
- 5페이지/ 한컴오피스
- 가격 1,500원
목차
1) 2.7 다음 정규 문법이 생성하는 언어는 각각 무엇인가?
2) 2.9 다음 context-free 문법이 생성하는 언어는 각각 무엇인가?
3) 2.11 다음 언어를 생성하는 context-free 문법은 각각 무엇인가?
4) 2.19 다음은 PL/0 문법이다. PL/0 언어를 이용하여 다음을 프로그래밍 하시오. 500 이하의 완전수(perfect number)를 구하시오.
본문내용
(1) G₁ = ({A, B}, {a, b}, P, A),
P : A → aB
B → bB | b
시작 심벌 A로부터 한 가지 생성 규칙이 적용 가능,
A ⇒ aB ⇒ ab ab ∈ L(G₁)
A ⇒ aB ⇒ abB ⇒ abb abb ∈ L(G₁)
A ⇒ aB ⇒ abB ⇒ abbB ⇒ abbb abbb ∈ L(G₁)
<중 략>
<PL/0_PROGRAM> → <BLOCK>'.'
<BLOCK> → <DCL> <STATEMENT>
<DCL> → <CONST_DCL> <VAR_DCL> <PROC_DCL>
<CONST_DCL> → 'CONST' <CONST_DEF+> ';' | ε
<CONST_DEF+> → <CONST_DEF> | <CONST_DEF+> ';' <CONST_DEF>
<CONST_DEF> → <identifier> '=' <number>
<VAR_DCL> → 'VAR' <VAR_DEF+> ';' | ε
<VAR_DEF+> → <identifier> | <VAR_DEF+> ',' <identifier>
<PROC_DCL> → <PROC_DCL> | <PROC_DCL_1> | ε
<PROC_DCL_1> → <PROC_HEAD> <BLOCK> ';'
<PROC_HEAD> → 'PROCEDURE' <identifier> ';'
<STATEMENT> → <ASSIGNMENT_ST> | <CALL_ST> | <COMPOUND_ST>
| <IF_ST> | <WHILE_ST> | ε
참고 자료
없음