컴파일러 구성 요소 간략 정리
컴파일러는 프로그래밍 언어를 기계어로 번역하는 도구로, 구성 요소로 어휘 분석기와 구문 분석기, 의미 분석기, 코드 생성기를 갖는다. 어휘 분석기, 구문 분석기, 의미 분석는 컴파일러의 프론트엔드(Front-End), 코드 생성기는 백엔드(Back-End)에 해당한다. 해당 게시물은 각 구성 요소에 대해서 간략하게 설명한다. 1. 어휘 분석기 어휘 분석기(Lexical Analyzer)는 소스 코드에서 어휘를 분석하는 도구로, 문자열 형태로 주어진 소스 코드를 문법적인 의미가 있는 토큰(Token)으로 분해한다. 해당 소스 코드에서 크게 의미가 없는 공백, 개행, 탭 등의 문자는 제거하고 문법적 의미가 있는 식별자, 연산자, 키워드, 상수만 토큰화(Tokenization)해서 저장한다. #include ..
2023. 1. 30.