2016-10-25 1 views
0

대학에서 그들은 자바 코드의 일부 구문을 검사하기 위해 사용법 문법과 푸시 다운 오토 마톤을 요구합니다. 왜냐하면 나는이 오토 마톤을 사용하지 않았기 때문에 어떻게 작동하는지 조금 배웠다. 푸시 다운 오토 마톤은 어떤 토큰 사이의 어떤 비율로든 문법을 검증하는 데 사용되기 때문에이 오토 마톤은 코드 구문 검사에별로 도움이되지 않는다고 생각한다. "0^n 1^2n | n> = 0"과 같습니다.이 경우 푸시 다운 오토 마톤이 유용할까요?

이 토큰 사이의 비율은 코드 구문에 나타나지 않으므로 푸시 다운 오토 마톤은이 경우 유용하지 않다고 생각합니다.

  • 맞습니까?
  • 나는이 작품에 대해 불평해야합니까?

답변

0

비 결정적 푸시 다운 수락 자 (NPDA) 및 컨텍스트 프리 그래머 (CFG)는 표현 언어에서 동일한 권한을가집니다.

프로그래밍 언어 (예 : java) 구문의 대부분 (전부는 아닐지라도)은 CFG에서 제공 할 수 있으므로 NPDA에서도 제시 할 수 있습니다.

그럼, 불평을하지 말고 과제를하십시오.

+0

답변 주셔서 감사합니다.하지만 어떻게 완전하게 선형 인 문법에서 스택을 사용할 수 있습니까? 코드 라인의 구문에서 토큰의 양이 아무 관계도 없기 때문에 스택을 사용할 필요가 없다는 것을 의미합니다. 이 코드 줄 "int var = 25 + x"에 대해 푸시 다운 수락기를 만들 수 있습니까? – vanillaHoman

관련 문제