프로그래밍 언어
컴파일러(Compiler), 인터프리터(Interpreter)
ruby-jieun
2022. 12. 29. 21:02
컴파일러
1. Compiler
컴파일이란 어떤 언어의 코드 전체를 다른 언어로 바꿔주는 과정이다. 그리고 이것을 자동으로 수행해주는 소프트웨어를 컴파일러라고 한다.
- 인간은 문제를 풀기 위해 컴퓨터를 사용하며 컴퓨터와 의사소통을 하는 데 언어가 필요하다.
- 컴퓨터는 기계어를 사용하지만 인간은 사람중심 언어인 고급 언어를 사용한다.
- 따라서 컴퓨터와 인간이 사용하는 언어를 기계어로 번역해주는 컴파일러가 필요하다.
2. 프로그래밍 언어의 분류
1) 저급 언어
① 기계어
- 0, 1 로 구성된 언어이다.
- 매우 어렵고 복잡하다는 단점이 있다.
② 어셈블리어
- 기계어의 단점을 보완하기 위해 나왔다.
- 0, 1 대신 ADD, SUBT 등의 명령 기호로 기술한다.
③ 어셈블러의 필요성
- 어셈블러를 컴퓨터가 이해하는 기계어로 번역한다.
2) 고급 언어
- 어셈블리어도 저급언어의 수준을 벗어나지 못해 인간 중심의 고급 언어가 탄생한다.
- 고급언어도 저급언어처럼 기계어로 변환하는 번역기가 필요하다.
3. 번역기의 종류와 기능
인터프리터
1. 인터프리터는 코드를 한 줄 한 줄 읽어가며 명령을 처리하는 프로그램이다.
2. R이나 python과 같은 대화형 언어로 구현할 때 사용한다.
3. 번역과 실행을 같이 수행하기 때문에 특히 반복문일 때 실행시간이 많이 늘어난다.
4. 명령을 잘 못 입력하면 바로바로 수정할 수 있다는 장점이 있어서 많이 사용된다.