컴파일러

컴파일러의 어휘 분석의 역할로 올바른 것은?

  1. A프로그램의 문장이 언어의 문법에 맞는지를 트리 형태로 확인한다
  2. B소스 코드의 문자열을 식별자나 연산자 등의 토큰으로 나눈다
  3. C변수의 타입이 맞는지, 정의되지 않은 이름을 사용하지 않았는지를 검사한다
정답과 해설 보기

정답: B. 소스 코드의 문자열을 식별자나 연산자 등의 토큰으로 나눈다

어휘 분석은 컴파일러의 첫 단계로, 예를 들어 「count = count + 1;」을 식별자 count, 기호 =, 식별자 count, 기호 +, 숫자 1, 기호 ; 라는 토큰으로 나눕니다. 공백과 주석도 여기서 제거됩니다. 토큰의 규칙은 정규 표현식으로 쓸 수 있으므로 유한 오토마톤으로 빠르게 처리할 수 있습니다. 문법에 맞는지를 트리 형태로 확인하는 것은 다음 단계인 구문 분석, 타입이나 이름을 검사하는 것은 의미 분석의 역할입니다.

  • A. 문법을 트리 형태로 확인하는 것은 구문 분석입니다.
  • B. 올바릅니다. 문자열을 토큰으로 나누는 단계입니다.
  • C. 타입이나 이름을 검사하는 것은 의미 분석입니다.
이 분야 연습하기 분야로 돌아가기

컴파일러의 다른 문제

  1. 컴파일러의 구문 분석에서 하는 일로 올바른 것은?
  2. 컴파일러의 의미 분석에서 발견되는 오류의 예로 가장 적절한 것은?
  3. 추상 구문 트리(AST)의 특징으로 올바른 것은?
  4. 컴파일러 내부에서 소스 언어에도 CPU에도 의존하지 않는 중간 표현(IR)을 사용하는 주된 이점은?
  5. 기본 블록에 대한 설명으로 올바른 것은?

이 분야의 비교