티스토리 뷰
파이썬(Python)과 C언어, CPP, Java등 수많은 프로그래밍 언어가 있습니다. 그렇다면 우리가 입력한 코드는 컴퓨터가 어떠한 방식으로 해석을 하는 것일까요? 파이썬, C언어, CPP, Java와 같은 언어를 우리는 고급언어라고 합니다. 하지만 처음부터 우리가 고급언어를 사용한 것은 아닙니다. 현재도 새로운 언어가 등장하는데 처음에는 저급언어인 기계어부터 시작하였습니다.
컴퓨터는 0과1의 값을 가지고 있습니다. 기계어의 경우 이 값을 일일히 지정하여주는 것인데 이러한 언어는 매우 복잡하고 비효율적입니다. 그래서 파이썬과 C언어와 같은 고급언어가 생겨난 것입니다. 뒤죽박죽인 저급언어는 배우기도 어렵습니다. 따라서 사람들이 좀더 쉽게 코드를 작성할 수 있도록, 방금 언급한 고급언어가 생겨나게 된 것입니다.
하지만 이러한 고급 언어는 프로그램을 짠 후에 해석을 위한 번역기가 필요합니다. 우리는 이 것을 '명령해석기'라고 부릅니다. 우리가 작성한 코드를 기계어를 사용하기 위해 번역을 해주는 작업을 담당합니다.
일반적으로 명령해석기에는 두가지 종류가 있습니다. '인터프리트(Interpret)' 방식과 '컴파일(Compile)'방식입니다.
인터프리트 방식의 해석기를 '인터프리터(Interpreter)'라고 부르고 컴파일 방식의 해석기를 '컴파일러(Compiler)'라고 부릅니다. 그렇다면 어떤 차이가 있을까요?
●인터프리트(Interpret) 와 컴파일(Compile)
인터프리트 방식은 사람의 한마디가 끝날때마다 동시통역해주는 방식과 흡사합니다. 명령어를 한줄한줄 입력하는 것이지요. 반대로 컴파일 방식은 우선 처음부터 끝까지 말을 다 듣고 해석해주는 번역과 비슷합니다.
명령어를 한줄씩 입력하고 결과를 출력한다면 인터프리트, 명령어를 다 입력하고 한번에 결과를 본다면 컴파일러! 참 간단하죠?
그렇다면 우리가 지금 배우고 있는 파이썬의 경우 어떤 것에 해당이 될까요? 맞습니다, 파이썬의 경우 인터프리트 입니다. 반대로 C언어의 경우는 코드를 우선 다 작성하고 결과를 한번에 출력하기때문에 컴파일 방식입니다. 하지만 우리는 코드를 한번만 사용하는 것이아니라 재사용할일이 많이 있습니다. 그렇기 때문에 인터프리트 방식의 언어도 파일로 저장해둘 필요가 있죠. 하지만 한줄한줄 입력하고 결과를 본다면 코드를 저장해놓기 힘들겠죠? 그래서 인터프리트 방식의 언어지만 컴파일과 유사하게 코드를 처음부터 끝까지 저장해놓고 불러와서 해석할 수도 있습니다. 이상으로 인터프리와 컴파일에 대한 소개를 끝내고, 다음시간부터는 자료형에 대해 알아보도록 하겠습니다.
※공감은 블로거에게 큰힘이 됩니다.
'나는 오늘도 공부한다 > Python' 카테고리의 다른 글
파이썬(Python) 나홀로 공부하기-6일차(자료형1) (0) | 2015.07.28 |
---|---|
파이썬(Python) 나홀로 공부하기-4일차(HelloWorld) (4) | 2015.07.23 |
파이썬(Python) 나홀로 공부하기-3일차(숫자계산하기) (0) | 2015.07.22 |
파이썬(Python) 나홀로 공부하기-2일차(변수) (21) | 2015.07.21 |
파이썬(Python) 나홀로 공부하기-1일차(파이썬설치하기) (6) | 2015.07.20 |
- Total
- Today
- Yesterday
- javascript
- 서비스센터
- 한컴 오피스
- 구굴 RSS등록
- 별찍기
- 파이썬
- 프로그래밍 배우기
- 파비콘 만들기
- 보조배터리
- c언어
- 블로그 활성화
- math.h
- pasilda
- 제어문
- 파비콘
- 다이아몬드 만들기
- html5
- 검색 등록
- 구글 검색등록
- 반복문
- 카카오링크
- 윈도우10
- c언어 연습문제
- 정렬 알고리즘
- 실습예제
- 샤오미
- 윈도우 단축키
- cpp
- 프로그래밍
- 웹페이지 제작
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |