3

내가 컴파일러 읽고 있어요 : 원칙, 기법 및 도구을이 이해가 안 :어휘 분석의 상태/천이도 - * (별표)가 순방향 포인터를 취소하는 데 중요한 의미가 있습니까?

또한, 필요한 경우 전방 포인터를 한 위치 를 철회 (즉, 어휘는 않습니다 수락하는 심볼을 포함하지 않는 경우), 우리는 추가로 해당 수용 상태 근처에 *를 추가해야합니다. 예에서 두 개 이상의 위치로 앞으로 철회 할 필요는 없지만 허용되는 경우 수락하는 상태에 여러 개의 *를 첨부 할 수 있습니다.

모든 감각을 만드는

,하지만 난 별표의 의미를 이해하지 않습니다. 이 책은 정규 표현식 (Kleene star/closure)에서 사용하고 있거나, 다른 것을 표현하는 데 사용되고 있습니까?

+0

(올바른 사이트인지 확인하고 태그가 너무 많이 붙어있는 것 같음) – Pubby

답변

3

아니요, Kleene 스타가 아니며, 텍스트가 설명합니다. 마지막 토큰을 다시 넣는 것은 본질적으로 해당 문자가 허용 된 문자의 일부가 아니기 때문에 말합니다. 예를 들어 <을 고려하면 RE에서 두자를 읽지 만 두 번째자를 실제로 읽으 려하지 않으므로 후속 읽기가 먼저 찾을 수 있도록 다시 넣습니다.

일반적으로 완전한 FSM (유한 상태 시스템)에서는 완전한 어휘 구문을 처리하기 때문에 이러한 상황이 발생하지 않지만 구문의 일부만 표시하므로이 장치를 사용해야합니다. 이 예제에서 "다른"원호는 다른 상태로 이동합니다 (더 많은 원호로).