기타 강좌

6. 인터프리터(interpreter)

 

 

‘파이썬 시작하기’ 강좌에서부터 정체를 알 수 없는 ‘이상한 프로그램’이라는 것을 써왔는데,아직 설명을 안 해 드려서 많이 궁금하셨죠?

 

오늘 드디어 이 이상한 프로그램에 대해 알려드리려고 합니다.

 

컴퓨터가 알아듣는 말

 

엄청난 양의 정보들을 잘도 주무르는 이 컴퓨터란 녀석은 대체 어떻게 작동하는 걸까요?~[알아봅시다요]

 

컴퓨터는 전기가 통하는지 안 통하는지의 딱 두 가지 정보를 가지고 정보를 처리한답니다~~!!

 

우리가 저녁이 되면 전깃불을 켜고, 잠잘 땐 끄는 것과 마찬가지에요. 저는 불을 켜고도 잘 자지만요ㅎㅎ

 

이렇게 간단한 정보를 갖고 무엇을 할 수 있을까 싶지만, 스위치가 두 개 있으면 네 가지 정보를 표현할 수 있다는 걸 생각해보세요..^^

 

스위치가 10개 있으면 몇 가지 정보를 표현할 수 있을까요?

 

스위치가 두 개 있으면 2의 제곱인 4 가지 정보를 표현 할 수 있었구요,

 

스위치가 10개 있으면 2의 10 제곱, 그러니까 1024가지 정보를 표현할 수 있답니다.

 

컴퓨터에선 불이 켜지고 꺼진 것을 1과 0으로 나타내구요, 스위치 하나를 비트라고 말하지요.

 

그래서 컴퓨터에게 명령을 내리려면 컴퓨터가 알아들을 수 있도록 비트로 말을 해야합니다.

 

이럴 때 사용되는 프로그래밍 언어를 저급 언어라고 하지요.

 

저급 언어로는 기계어와 어셈블리어가 있습니다.

 

그런데 사람이 1과 0으로 프로그래밍하는 것이 가능할까요?

 

컴퓨터야, 10111101010010111001101010101100110100111011011 해라, 알았징??+ㅁ+;;

 

얼마나 짜증나겠나요 ㅡㅡ;;;  외우기도 한 10년 걸리겟네요 ㅎㅎ~~

 

그런 어려움이 있기 때문에 사람이 프로그램 작성을 쉽게 할 수 있도록,

 

방금 말씀드린 베이직이나, 요즘 많이 쓰는 자바, C/C++ 등등의 고급 언어가 생겨난 거랍니다.

 

그런데, 이런 고급 언어로 프로그램을 짠 다음엔 컴퓨터가 알아들을 수 있게 번역을 해 줄 필요가 있겠지요?

 

그렇게 번역을 하는 방법에도 두 종류가 있답니다.

 

(네;;, 압니다요 ㅡㅡ;;. 저도 종류 많은 거 딱 질색입니다…^^;)

사람이 한 마디 할 때마다 동시통역해주는 방식을 인터프리트 방식이라고 하구요,

 

사람이 말하는 것을 처음부터 끝까지 듣고 나서 한꺼번에 바꿔주는 것을 컴파일방식이라고 하지요.[알죠? 컴파일.]

 

중학교 되면 거의다 배우게되는데 너무 대충가르쳐줘서 헷갈립니다... +ㅁ+;;;

 

우리가 배우는 파이썬은 어떤 방식일까요?

 

물론 인터프리트 방식이겠죠? 우리의 명령을 한 줄 씩 해석해서 일을 하니까요.

 

바로 이 ‘이상한 프로그램’도 파이썬으로 작성된 프로그램을 컴퓨터에게 번역해주는 인터프리터랍니다.

 

그리 대단치도 않은 것을 너무 장황하게 설명드렸나요;;ㅎㅎ

 

어렵게 생각하시지 마세요... ^^

 

 

인터프리터를 대화식으로 사용하기

 

지금까지 우리가 사용했던, 인터프리터에 명령을 한 줄 씩 입력하면 인터프리터가

 

그때그때 답을 돌려주는 방법을 두고 ‘대화식으로 인터프리터를 사용한다’고 한답니다.

 

당연한 말이지만 대화식은 아주 쉽고 간단한 사용방법입니다.

 

우리도 파이썬에 대해 아무 것도 모르는 상태에서 당장 인터프리터를 계산기처럼 쓰기 시작할 수 있었지요.

 

대화식 사용방법은 그냥 쉽기만 한 것이 아니라, 파이썬의 문법을 배우고 연습해보거나,

 

복잡한 프로그램을 작성하기 위해 작은 부분을 테스트 할 때도 아주 편리하답니다.

 

이해가 가셧나요?

 

이해가 가지 않으신다면 다시 훓어보세요...

 

힘내세요!! 미래의 프로그래머분들! ^^


TAG •

List of Articles
분류 제목 글쓴이 날짜 조회 수
Vegas Pro 베가스 강좌 목록 아방스 2017.09.28 886
파이널컷X 파컷 강좌 목록 아방스 2017.06.18 757
기타 파이썬 총 강좌파일 올립니다... 3 file - 하늘 - 2009.09.10 7007
기타 [파이썬] if(만약 …이면) )8( 3 - 하늘 - 2009.09.10 2494
기타 [파이썬] while문 제어구조 알아보기)7( 1 - 하늘 - 2009.09.08 2806
기타 [파이썬] 인터프리터(interpreter) )6( - 하늘 - 2009.09.07 2348
기타 [파이썬] 리스트(list) )5( 4 - 하늘 - 2009.09.07 3140
기타 [파이썬] 변수(변하는 수) )4( 4 - 하늘 - 2009.09.06 2559
기타 [파이썬] 파이썬 시작하기 )3( 2 file - 하늘 - 2009.09.05 2573
기타 [파이썬] 파이썬 설치하기 )2( 1 - 하늘 - 2009.09.05 2594
기타 [파이썬] 파이썬을 배우자 )1( 6 - 하늘 - 2009.09.05 2730
기타 - 하늘 -의 리눅스 book! [ <3>리눅스의 기초!] 1 file - 하늘 - 2009.08.03 2161
기타 해커스쿨 F.T.Z서버에 대해 궁금하신 분들은 글올려주세요... - 하늘 - 2009.08.03 3428
기타 - 하늘 -의 리눅스 book! [ <2>리눅스를 배우려면?][수정] 8 file - 하늘 - 2009.08.01 3357
기타 - 하늘 -의 리눅스 book! [ <1>리눅스를 배우기전에... ][수정] 5 - 하늘 - 2009.08.01 2145
기타 - 하늘 -의 리눅스 book! 리눅스를 배워보자! 5 - 하늘 - 2009.08.01 2515
기타 게임줄거리를 만들어볼까?!! 6 칼리아 2009.08.01 2522
기타 그림판으로 아이콘 만들기 4 검은별 2009.07.13 3395
XpressEngine 게시물의 추천/비추천 기능 추가하기 1 아방스 2009.07.09 4895
기타 아방스 분들 사과드립니다.... 12 제네시스& 2009.06.27 2307
C언어 제니스가 올린 글 출처 알았네요.... 2 제네시스& 2009.06.27 2383
C언어 알았습니다..그럼 게시물은 다 삭제해버리겠습니다.. 8 제니스 2009.06.16 2278
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19