6. 인터프리터(interpreter)
‘파이썬 시작하기’ 강좌에서부터 정체를 알 수 없는 ‘이상한 프로그램’이라는 것을 써왔는데,아직 설명을 안 해 드려서 많이 궁금하셨죠?
오늘 드디어 이 이상한 프로그램에 대해 알려드리려고 합니다.
컴퓨터가 알아듣는 말
엄청난 양의 정보들을 잘도 주무르는 이 컴퓨터란 녀석은 대체 어떻게 작동하는 걸까요?~[알아봅시다요]
컴퓨터는 전기가 통하는지 안 통하는지의 딱 두 가지 정보를 가지고 정보를 처리한답니다~~!!
우리가 저녁이 되면 전깃불을 켜고, 잠잘 땐 끄는 것과 마찬가지에요. 저는 불을 켜고도 잘 자지만요ㅎㅎ
이렇게 간단한 정보를 갖고 무엇을 할 수 있을까 싶지만, 스위치가 두 개 있으면 네 가지 정보를 표현할 수 있다는 걸 생각해보세요..^^
스위치가 10개 있으면 몇 가지 정보를 표현할 수 있을까요?
스위치가 두 개 있으면 2의 제곱인 4 가지 정보를 표현 할 수 있었구요,
스위치가 10개 있으면 2의 10 제곱, 그러니까 1024가지 정보를 표현할 수 있답니다.
컴퓨터에선 불이 켜지고 꺼진 것을 1과 0으로 나타내구요, 스위치 하나를 비트라고 말하지요.
그래서 컴퓨터에게 명령을 내리려면 컴퓨터가 알아들을 수 있도록 비트로 말을 해야합니다.
이럴 때 사용되는 프로그래밍 언어를 저급 언어라고 하지요.
저급 언어로는 기계어와 어셈블리어가 있습니다.
그런데 사람이 1과 0으로 프로그래밍하는 것이 가능할까요?
컴퓨터야, 10111101010010111001101010101100110100111011011 해라, 알았징??+ㅁ+;;
얼마나 짜증나겠나요 ㅡㅡ;;; 외우기도 한 10년 걸리겟네요 ㅎㅎ~~
그런 어려움이 있기 때문에 사람이 프로그램 작성을 쉽게 할 수 있도록,
방금 말씀드린 베이직이나, 요즘 많이 쓰는 자바, C/C++ 등등의 고급 언어가 생겨난 거랍니다.
그런데, 이런 고급 언어로 프로그램을 짠 다음엔 컴퓨터가 알아들을 수 있게 번역을 해 줄 필요가 있겠지요?
그렇게 번역을 하는 방법에도 두 종류가 있답니다.
(네;;, 압니다요 ㅡㅡ;;. 저도 종류 많은 거 딱 질색입니다…^^;)
사람이 한 마디 할 때마다 동시통역해주는 방식을 인터프리트 방식이라고 하구요,
사람이 말하는 것을 처음부터 끝까지 듣고 나서 한꺼번에 바꿔주는 것을 컴파일방식이라고 하지요.[알죠? 컴파일.]
중학교 되면 거의다 배우게되는데 너무 대충가르쳐줘서 헷갈립니다... +ㅁ+;;;
우리가 배우는 파이썬은 어떤 방식일까요?
물론 인터프리트 방식이겠죠? 우리의 명령을 한 줄 씩 해석해서 일을 하니까요.
바로 이 ‘이상한 프로그램’도 파이썬으로 작성된 프로그램을 컴퓨터에게 번역해주는 인터프리터랍니다.
그리 대단치도 않은 것을 너무 장황하게 설명드렸나요;;ㅎㅎ
어렵게 생각하시지 마세요... ^^
인터프리터를 대화식으로 사용하기
지금까지 우리가 사용했던, 인터프리터에 명령을 한 줄 씩 입력하면 인터프리터가
그때그때 답을 돌려주는 방법을 두고 ‘대화식으로 인터프리터를 사용한다’고 한답니다.
당연한 말이지만 대화식은 아주 쉽고 간단한 사용방법입니다.
우리도 파이썬에 대해 아무 것도 모르는 상태에서 당장 인터프리터를 계산기처럼 쓰기 시작할 수 있었지요.
대화식 사용방법은 그냥 쉽기만 한 것이 아니라, 파이썬의 문법을 배우고 연습해보거나,
복잡한 프로그램을 작성하기 위해 작은 부분을 테스트 할 때도 아주 편리하답니다.
이해가 가셧나요?
이해가 가지 않으신다면 다시 훓어보세요...
힘내세요!! 미래의 프로그래머분들! ^^