문제

우리는 예측 파서 LL (1)을 사용한다고 말합니다.왜

가 필요합니까?

$ 첫 번째 (\ alpha) \ CAP 첫 번째 (\ beta)=eqwelset $ ,

모든 $ \ alpha, \ beta $ 대체 프로덕션의 오른쪽 I.E.E.E.E.E.E.E.E.E.E..왜이 조건이 필요합니까?

도움이 되었습니까?

해결책

여기에 직관적 인 설명이 있습니다 :

은 기본적으로 LL (1) 파서의 특성으로부터 다음과 같이됩니다. LL (1) 파서는 (1) 파싱 테이블을 만듭니다. 테이블의 행은 nonterminals이고 열은 터미널입니다. 우리는 LL (1)을 입력하는 것과 같이 구문 분석을 생각할 수 있습니다. (1) 테이블 조회가 입력에서 각 기호를 만나면 다음과 같이하십시오. 현재 비 터터 및 입력 단자가 결정한 항목을보고 해당 프로덕션 규칙을 적용합니다. 따라서 LL (1) 테이블은 각 항목에서 여러 프로덕션 규칙을 포함 할 수 없으므로 파서는 적용 할 규칙을 결정할 수 없습니다.

프로덕션 $ \ alpha $ 의 오른쪽면이 $ \ beta $ 은 교차합니다. 첫 번째 세트는 LL (1) 테이블 (즉, 중복 / 상충되는 항목)에서 단일 항목에 여러 규칙을 가질 것입니다 .- 첫 번째 세트가 아닌 트리픽스 교차점은 기본적으로 LL (1) 파싱 테이블을 구성하지 못하게합니다.

이 조건이 필요한 이유에 대해 여전히 불분명 한 경우 이유에 대해 불분명하면 제작의 오른쪽에있는 첫 번째 세트가 교차하는 예제를 제시 한 다음 LL을 수동으로 구성하려고 시도합니다. (1) 온라인 시각화 도구 ; 즉시 충돌을 찾을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top