반응형
안녕하세요.
블로그 시작을 알리고는
첫 포스팅이군요.
자 첫글 부터 C언어 강좌를..
처음은 처음이니까 C가 무엇인지 컴파일러가 무엇인지 알고 들어가야겠죠?
먼저 프로그래밍 언어가 무엇인지 알고 들어가야지 c언어가 뭔지 대충은 알겠죠.
1. 프로그래밍 언어란?
예를 들어 우리가 일상 생활을 하면서 생각이나 느낌을 전달하기 위해 언어(영어, 한국어 등등)을 이용하여 소통을 합니다.
자 그러면 우리가 기계(컴퓨터)와 소통을 하기 위해 필요한 언어가 프로그래밍 언어입니다. 그중에는 C, C++, JAVA, C# 등 겁나 많습니다.
2. C언어란?
(2.1) C언어 탄생
C언어는 1972년 벨 연구소에서 UNIX 운영체제을 만들기 위해 데니스 리치와 켄 톰슨에 의해 만들어진 고급 언어 입니다.
(2.2) C언어 용도
C언어는 프로그램 속도가 매우 빠르기 때문에 운영체제나 운영체게 같은 시스템, 운영체제 기반의 응용 프로그램의 개발할 때 주로 사용이됩니다. 또 소프트웨어 분야, 모바일, 자율 컴퓨팅분야 등 아주 많이 사용되는 언어 입니다.
3. C언어 특징
- 프로그래밍 언어중 C언어를 먼저 배우면 다른 프로그래밍 언어를 배우기가 쉽다.
- C언어는 시스템, 하드웨어 부분이 제어가 가능하다.
- C언어는 절차지향 언어이다.
자 C언어가 무엇인지 보았습니다.
이제 컴파일러가 무엇인지 봐야겠죠.
★ 컴파일러란?
자 컴파일러란 우리가 프로그래밍 언어로 소스를 작성을 하면
그것을 컴퓨터(기계)가 이해할 수 있도록 기계어(2진수)로 변환하는 변환기!
자 근데 이게 무슨 소리 인지 모르겠다.
예를 들어
우리가 한국어를 씁니다. 근데 외국인이랑 얘기를 합니다.
근데 중국인이랑 얘기를 나눠야 되는데 중국어를 모르잖아요.
그러면 서로 소통이 가능하도록 중간에 통역사가 해석을 해줍니다.
여기의 이 통역사가 컴파일러라고 보면 쉽습니다.
자 컴파일러란 우리가 프로그래밍 언어로 소스를 작성을 하면
그것을 컴퓨터(기계)가 이해할 수 있도록 기계어(2진수)로 변환하는 변환기!
자 근데 이게 무슨 소리 인지 모르겠다.
예를 들어
우리가 한국어를 씁니다. 근데 외국인이랑 얘기를 합니다.
근데 중국인이랑 얘기를 나눠야 되는데 중국어를 모르잖아요.
그러면 서로 소통이 가능하도록 중간에 통역사가 해석을 해줍니다.
여기의 이 통역사가 컴파일러라고 보면 쉽습니다.
다시 한번 강조 하면
우리가 소스를 작성하고 기계가 알아 들을 수 있도록
기계어로 변환해 주는게 컴파일러다.
자 근데 여기서!
또 기계어가 뭐지?
★ 기계어란?
기계 즉 컴퓨터가 이해할 수 있는 2진 숫자 0과 1로만 이루어진 언어.
우리가 C언어로 소스를 작성하고 그냥 컴퓨터에 주면 못 알아 먹습니다.
이 C 프로그램을 컴파일러가 기계어로 변환해주는 거죠.
기계어로 변환이 되야지 기계가 알아들을 수가 있습니다.
자 이것도 뭔소리인지 모르겠다.
우리가 컴퓨터 한테
"안녕???"
이라고 보내면 못 알아 먹습니다.
근데
우리가 C로 작성을 하고
"안녕?"
하고 컴파일러가 이걸 기계어로 바꾸어 주면
이제 기계가 알아듣는 겁니다.
자 이해를 하셨길 빌죠.
이렇게 c와 컴파일러에 대해 알아보았습니다.
이게 그림으로 설명을 하면 좋은데 지금 그림이 없어가지고..
될수 있다면 수정을 하도록 하겠습니다.
위와 같은 글을 어디서 보셨다면
제가 "소나기C"라는 네이버 카페에 쓴글을 여기에 다시 쓴것이니
참고해 두시길 바랍니다.
오타나 잘못 설명한것 등등이 있다면 댓글로 지적해주시길 바랍니다.
반응형