[방송통신대학교]컴파일러구성_동영상강의,기출_핵심요약노트
- 최초 등록일
- 2023.04.09
- 최종 저작일
- 2022.12
- 23페이지/ 한컴오피스
- 가격 3,000원
소개글
[방송통신대학교]컴파일러구성_동영상강의,기출_핵심요약노트
목차
없음
본문내용
*** 시작기호의 Follow는 무조건 $ 포함
Follow에서 엡실론은 무조건 삭제
*** 단순순위문법
T * F 처럼 3개가 나와야 비교 가능
스택보다 입력기호버퍼가 우선순위가 높거나 순위가 같을 경우 shift
*** 핸들
문제의 맨 아랫줄부터 해서, 거기서 윗줄이랑 비교했을 때 바뀐거. 현재 줄에서 그게 핸들
그 줄에서 핸들을 만났을 때 위로 reduce되는 것임
reduce를 해야하는 기호가 핸들
이전 줄 혹은 현재가 맨 처음일 경우에는 왼편과 비교해서 바뀐 그 자체가 그 줄의 핸들
E -> E+E 이렇게 됐을 때 핸들은 E+E
F -> id 이때는 id
*** First(TE`) = (First(T) 링썸 First(E`))
여기서 First(T)가 엡실론을 포함하면 뒤에 있는 것을 구해서 합해주고, 아니라면 앞에 것만 구하라는 말
★★★Follow(A) : 유도하다가 A 뒤에 나오는 터미널 기호들
★★★A가 시작기호라면 $ 무조건 포함, 엡실론은 어떤 경우든 무조건 제외
B -> aA일 경우 B 뒤에 터미널 기호가 있으면 aA 뒤에도 터미널 기호가 나옴 왜냐하면, B -> aA기 때문에 Bt -> aAt가 되기 때문. 그래서 Follow(A) ⊃ Follow(B)
E -> TE` 이거는 E 뒤에 터미널 기호가 있으면 TE` 뒤에도 터미널 기호가 나온다는 말
E -> TE`기 때문에 Et -> TE`t기 때문
그래서 Follow(E`) 는 Follow(E)를 포함함
Follow(T)이고, E -> TE`면 Follow(T)는 펄스트 First(E`)를 포함함
참고 자료
없음