본문 바로가기
컴퓨터과학[2-2]/[2-2]프로그래밍언어론

프로그래밍 언어론 심화학습 - 파스 트리(Parse tree)

by boolean 2015. 8. 22.
728x90

프로그래밍 언어론 심화학습 - 파스 트리(Parse tree)

원시 프로그램의 문법 검사 과정에서 내부적으로 생성되는 트리 형태의 자료구조
문장 표현이 BNF에 의해 작성될 수 있는지 여부를 나타냄
대상을 root로 하고, 단말노드를 왼쪽에서 오른쪽 방향으로 한다.

파스트리의 모호성

동일 문장에 2개 이상의 서로 다른 파스트리가 발생하면 그 문장은 모호하다고 하는데, 모호성은 반드시 제거 되어야 한다.
모호한 법은 모호성을 개정하거나, 모호성 제거규칙을 사용해서 제거해주어야 한다.

  1. 연산자 우선순위(항이라고 하는 새로운 규칙을 만듦)
    -위 쪽에 쓰이는 것은 우선순위 낮은 것, 아래 쪽에 쓰이는 것은 우선순위가 높은 것.
  2. 연산자 결합 법칙(D = A + B + C : 순서 A + B 더함 + C 더함(좌 결합 법칙) D에 대입 (우 결합 법칙))
    - 동일한 우선순위를 갖는 연산자를 두 개 이상 인접해서 나타내는 표현식에 대해 좌결합, 우결합을 적용 할 수 있다.




구문의 신뢰성


각 언어에서의 dangling(현수:주문(主文)의 주어와 문법적으로 결합되어 있지 않는) else 문제 해결책



댓글