맨위로

C PROGRAMMING - 기초2012. 2. 4. 14:17

이 글에서는 C 언어에 대해서 소개 해보도록하겠습니다. 자세한 내용은 계속 진행되는 강의 속에서 알아보도록 하고, 이번 강의에서는 간단하게 C 언어의 기본 구성에 대해서 살펴보도록 하겠습니다. 이 글을 보시는 분들은 C언어 뿐만 아니라 다은 언어도 배우실 분들일 것입니다. 새로운 언어를 배우는 방법은 소스코드를 직접손으로 쳐보고 오류가 나면 오류를 고쳐 보는것입니다. 그러므로 이글을 읽는 분들은 소스코드를 눈으로만 보지 마시고 직접 작성해보시면 많은 도움이 될것입니다.  먼저 시작하기 전에 이 블로그에 와주시분들에 감사의 말씀 드립니다. 

C언어 시작


일단 C 언어를 문법적으로 이해가기 전에 C 프로그래밍에 대해서,그리고 프로그램 개발과 주변요소에 대해서 알아보도록하겠습니다.  이번강의는 가볍게 읽어주시기 바랍니다.

  • CPU 와 어셈블리 언어
CPU 여러분이 많이 알고 있는 Intel, AMD 같은 대표적인 회사에서 CPU를 만든다. CPU는 컴퓨터에서 일을 하는 핵심적인 부분이며 프로그램들은 CPU를 이용하기위해 명령을하는데 명령어의 형태는 대략 다음과 같다. 

push ebp
mov ebp,esp
sub esp,8


위의 명령어를 보면 한눈에 봐도 정감이 가지 않는다. 위에 명령어를 알기위해서는 CPU의 내부구조도 어느 정도알고 있어야 한다. 이러한 명령어를 어셈블리 언어라 한다. 어셈블리 언어는 CPU에 가장 가까운 언어임에는 틀림이 없다. 그러나 CPU가 직접적으로 위의 명령어를 이해할 수있는 것이아니다. 많은 분들이 알다시피 컴퓨터는 0,1 만을 이해할수 있다. 따라서 위의 명령어는 0과 1로 이루어진 코드(바이너리 코드)로 변환이 되어야 한다.  바이너리 코드로의 변환은 어셈블러 를 통해서 이루어진다. 지금 까지 어셈블리 언어에서 바이너리 코드로 변환 시켜야만 CPU에게 명령할수 있다는것을 알수 있었습니다. 이러한 명령문은 CPU에 의존적입니다. Intel 기반의 어셈블리언어로 동작하는 프로그램을 ARM 에서 동작시키려면 ARM 기반의 어셈블리언어로 다시 구현해야 합니다.


  • C언어와 컴파일러
어셈블리언어는 배우기도 어렵고 많은 양의 코드를 만들기에는 매우 불편합니다. 그래서 등장한 프로그래밍 언어가 C언어 입니다. C언어는 컴파일러 라는 프로그램과 함꼐 등장했습니다. 컴파일러는 C 언어로 구성된 코드를 어셈블리코드로 변환해주는 작업을 합니다. 이렇게 되면서 C언어를 통해 CPU에 명령을 내릴수 있는 프로그램을 쉽게 만들수 있게 됬습니다.  

 
컴파일러                     어셈블러
C프로그램 코드     ->      어셈블리 코드      ->      바이너리 코드


C언어의 등장으로 C언어 구문만 작성하면 어셈블리 코드 까지 자동으로 바꿔주니 얼마나 멋진일인가 !

우리는 컴파일러만 있으면 C언어로 프로그래밍을 작성할수 있다.  이제 우리는 C 언어 프로그래밍을 하기위해 컴파일러를 설치할것이다. 마이크로소프트 사에서 배포하는 Visual Studio 2010 을 사용하도록 하겠습니다. (마이크로소프트 사의 개발환경을 선택한것은 가장보편적이고 공짜로 사용할수 있다는 점에 선택한것입니다.)
http://www.microsoft.com/visualstudio/ko-kr/download  여러분은 이링크에서 Visual Studio 를 설치해 주시면 됩니다.
설치가 완료되면 Visual Studio 를 실행 시켜줍니다. 이 프로그램이 여러분이 C 프로그램을 개발할 환경입니다.  일단 Ctrl - Shift - N 을 눌르거나 파일 - 새로 만들기 - 프로젝트를 클릭합니다.

CLR 빈 프로젝트를 선택하고 이름은   'HelloWorld' 라고 입력합니다.
이제 좌측 솔루션 탐색기에 소스 파일에 마우스 오른쪽 클릭을 한다음 새항목을 클릭합니다.



아래와 같이 이름을 Helloworld.cpp 로 하시고 추가 하면 개발환경 구축이 마무리되게 됩니다.

 


지금 까지 제대로 따라오셨으면 다음과 같을것 입니다. 그렇다면 이제 비로소 프로그래밍을 시작할 준비가 된것입니다.

 




Hello World !

드디어, C 프로그래밍을 할수 있게 되었습니다. 환경을 구축하고 프로그래밍을 안해보면 안되겠죠. 다음 코드를 입력합니다. (반드시 직접 손으로 작성해 주세요.)

#include <stdio.h>
int main()
{
printf("Hello, World\n");
return 0;
}


작성을 다하셨다면 밑에 그림과 같이 솔루션 빌드를 해줍니다.


빌드를 성공적으로 하셨으면 Ctrl - F5 를 눌러서 프로그램을 실행해 봅시다.


드디어 C 언어를 이용한  여러분 최초의 프로그램을 만들었습니다. 아직 C 언어에 대해서 모르지만 모르는것은 알아가면 되는것 입니다. 다음 강의에서는 위의 소스코드에 대한 설명을 알아보고 C언어의 구문들의 형태에 대해서 알아보도록 하겠습니다.  감사합니다.

         "C 언어는 시작이 반이다. 그리고 나머지 반은 인내다."



'C PROGRAMMING - 기초' 카테고리의 다른 글

C언어 - 상수정의  (0) 2012.02.18
C언어 - For 문  (6) 2012.02.16
C언어 - 변수와 수식표현②  (0) 2012.02.14
C언어 - 변수와 수식표현①  (17) 2012.02.13
C언어 - Hello,World  (7) 2012.02.05
C언어 - 시작  (43) 2012.02.04

Posted by STIH

댓글을 달아 주세요