17 - Syntax Analysis
2021. 8. 4. 22:49ㆍ개발 관련 학습정리/컴파일러 만들기 (이론)
반응형
어휘 분석을 마치고 구문 분석을 이야기한다.
Syntax Analysis란?
- 한줄 한줄 입력된 코드가 유효한지 검사한다.
- 전체를 파싱하여 트리로 만들어 낸다.
- 크게 탑다운 파싱과 바텀업 파싱으로 나뉜다.
Syntax
1) S -> XY
2) X -> aX
3) X -> b
4) Y -> aY
5) Y -> c
Top-down Parsing
탑다운 파싱은 루트 노드부터 터미널 노드까지 파싱하는 방법이다.
파싱 순서는 1 -> 2 -> 3 -> 4 -> 5 순으로 되며,
스타트 지점인 S 부터 하나씩 풀어 나간다.
Bottom-up Parsing
바텀업은 터미널 노드로 부터 루트 노드까지 파싱하는 방법이다.
파싱 순서는 3 -> 2 -> 5 -> 4 -> 1
터미널인 a b a c로 부터 non-terminal인 X ,Y 를 찾은 뒤 마지막 스타팅 포인트를 찾는 방법이다.
반응형
'개발 관련 학습정리 > 컴파일러 만들기 (이론)' 카테고리의 다른 글
19 - Top Down Parsing (avoid Left-Recursion) (0) | 2021.08.09 |
---|---|
18 - Top Down Parsing (1) (0) | 2021.08.05 |
16 - Context-Free Grammar (CFG) (0) | 2021.07.28 |
15 - Grammar Translation (0) | 2021.07.27 |
14 - Derivation Tree (Parse Tree) (0) | 2021.07.26 |