컴파일러

어휘 분석에서 토큰을 구별하는 규칙을 나타내는 데 자주 사용되는 것은?

  1. A부동소수점의 반올림 규칙
  2. B정규 표현식과 이를 처리하는 유한 오토마톤
  3. C캐시 교체 규칙
정답과 해설 보기

정답: B. 정규 표현식과 이를 처리하는 유한 오토마톤

식별자는 「영문자로 시작하고 영숫자가 이어진다」, 숫자는 「숫자가 1개 이상 이어진다」와 같이 토큰의 종류는 정규 표현식으로 간결하게 쓸 수 있습니다. 정규 표현식은 유한 오토마톤(상태의 수가 유한한 기계)으로 변환할 수 있으며, 문자를 하나 읽을 때마다 상태를 옮겨 가기만 하면 입력 길이에 비례하는 시간으로 토큰을 잘라낼 수 있습니다. 그래서 어휘 분석기는 정규 표현식으로부터 자동 생성하는 도구로 만들어지는 경우도 많습니다. 반올림이나 캐시의 규칙은 어휘 분석과 관계가 없습니다.

  • A. 반올림 규칙은 수치 계산의 이야기입니다.
  • B. 올바릅니다. 정규 표현식으로 규칙을 쓰고 유한 오토마톤으로 처리합니다.
  • C. 캐시 교체는 메모리 계층의 이야기입니다.
이 분야 연습하기 분야로 돌아가기

컴파일러의 다른 문제

  1. 많은 프로그래밍 언어의 문법을 나타내는 데 사용되며 구문 분석의 기초가 되는 문법의 종류는?
  2. 식 2 + 3 * 4의 추상 구문 트리의 형태로 올바른 것은?
  3. 중간 표현의 하나인 3-주소 코드의 특징으로 올바른 것은?
  4. 레지스터 할당의 준비로 수행하는 생존 구간(라이브니스) 분석에서 구하는 것은?
  5. 어떤 함수 안에서 동시에 살아 있는 값의 수가 가장 많은 곳에서 5개였다. 간섭 그래프가 이 5개 이외의 제약을 만들지 않는 단순한 경우, 모든 값을 스필 없이 레지스터에 두려면 레지스터가 최소 몇 개 필요한가?

이 분야의 비교