검색어 입력폼

[컴퓨터공학]컴파일러 연습문제 8장

저작시기 2006.06 |등록일 2006.06.29 한글파일한글 (hwp) | 5페이지 | 가격 1,000원

소개글

8장 8,10번

목차

8장 8,10번

본문내용

8.8 아래와 같이 문법이 주어졌을 때,
S -> S + A | A
A -> (S) | a(S) | a
(1) C0을 구성하시오.
Augmented Production :
0. S`-> S
1. S -> S + A
2. S -> A
3. A -> (S)
4. A -> a(S)
5. A -> a

스택
0
0a4
0a4(7
0a4(7a4
0a4(7A
0a4(7A2
0a4(7S
0a4(7S10
0a4(7S10+5
0a4(7S10+5a4
0a4(7S10+5A
0a4(7S10+5A8
0a4(7S
0a4(7S10
0a4(7S10)11
0A
0A2
0S
0S1

FOLLOW(S) = {+ , ) , $}
FOLLOW(A) = {+ , ) , $}

(3) SLR 파싱 테이블을 작성하시오.
상태
ACTION 테이블
GOTO 테이블
(
)
a
+
$
S
A
0
s3

s4


1
2
1



s5
acc


2

r2

r2
r2


3
s3

s4


6
2
4
s7
r5

r5
r5


5
s3

s4



8
6

s9

s5



7
s3

s4


10
2
8

r1

r1
r1


9

r3

r3
r3


10

s11

s5



11

r4

r4
r4



(4)스트링 a(a+a)를 구문 분석하고 우파스를 구하시오.
단계
스택
입력심벌
구문분석내용
출력
0
0
a(a+a)$
shift 4

1
0a4
(a+a)$
shift 7

2
0a4(7
a+a)$
shift 4

3
0a4(7a4
+a)$
reduce 5
5
4
0a4(7A
+a)$
GOTO 2

5
0a4(7A2
+a)$
reduce 2
2
6
0a4(7S
+a)$
GOTO 10

7
0a4(7S10
+a)$
shift 5

8
0a4(7S10+5
a)$
shift 4

9
0a4(7S10+5a4
)$
reduce 5
5
10
0a4(7S10+5A
)$
GOTO 8

11
0a4(7S10+5A8
)$
reduce 1
1
12
0a4(7S
)$
GOTO 10

13
0a4(7S10
)$
shift 11

14
0a4(7S10)11
$
reduce 4
4
15
0A
$
GOTO 2

16
0A2
$
reduce 2
2
17
0S
$
GOTO 1

18
0S1
$
accept


따라서 우파스는 525142 이다.

참고 자료

컵파일러 입문
다운로드 맨위로