CS/컴파일러

CS/컴파일러

2. Formal Language

Natural Language : 한국어, 영어 등 (유연성 있음) Formal Language : C언어, 자바 등 (규칙을 다 지켜야 소통 가능) Well-defind language is defined by a set of sentences. 알파벳 : 심볼을 가지고 있는 유한집합 String : 심볼들을 이어붙인 것 Length of string : 스트링이 가지고 있는 심볼의 개수 empty string : 길이가 0인 스트링 그 외 수학적인 규칙들이 많다.

CS/컴파일러

1. Overview

컴파일러 : 주어진 언어로 작성된 컴퓨터 프로그램을 다른 언어의 동등한 프로그램으로 변환하는 프로세스 컴파일러와 인터프리터의 차이는 컴파일러는 실행 전에 모든 코드를 번역하여 실행파일을 따로 만든다. 번역 속도는 느리지만, 결과적으로 실행 속도는 빠르다. 인터프리터는 한 줄씩 번역한다. 번역 속도는 빠르지만, 결과적으로 실행 속도는 느리다. 어셈블러는 기계어로 코딩을 하는 것인데, 사람이 매번 이럴 수는 없으므로 소스코드로 작성한다. 그리고 이것을 컴파일러가 변환해준다. 컴파일러는 크게 어휘 분석과 구문 및 의미 분석, 코드 생성 단계로 나뉜다. 컴파일러에 따라서는 선택적으로 구문 및 의미 분석과 코드 생성 단계 사이에 중간 코드를 생성하거나 코드를 최적화하기도 한다. 어휘 분석기(Lexical anal..

화서동 병아리
'CS/컴파일러' 카테고리의 글 목록