새소식

프로그래밍/C | C++

[C] 01 프로그래밍의 개념 - 1.3 C언어의 소개

  • -

이 글은 [쉽게 풀어쓴 C언어 Express 개정판]을 읽고 정리한 내용입니다. 상업적 목적이 아닌 단순히 공부한 내용을 정리하려는 생각으로 쓴 것이니 그 점 유의하고 봐주시기 바랍니다.

http://book.naver.com/bookdb/book_detail.nhn?bid=6984786





1.3 C언어의 소개


● C언어의 역사
  • C언어는 1969년과 1973년에 걸쳐서 AT&T의 벨연구소에서 Dennis Ritchie에 의하여 탄생하였다.
  • 'C'라고 하는 이름이 만들어진 이유는 직전에 만들어진 언어의 이름이 'B'였기 때문이다. 
  • C언어는 UNIX 운영체제를 개발하기 위하여 만들어졌다. 'Space Travel' 이라고 하는 게임을 하기 위해서 사무실에 있었던 미니컴퓨터(PDP-11)에 이식하려고 했지만 운영체제가 없을 뿐 더러 어셈블리어로 작성하기엔 너무 어렵고 지루했기에 개발했다고 알려져있다.

● C언어의 특징
  • C언어는 간결한 언어이다. 꼭 필요한 기능만이 들어 있고 모든 표기법이 아주 간결하게 되어있다.
  • C언어는 효율적인 언어이다. C로 작성된 프로그램이 크기가 작으며 실행 속도가 빠르고 메모리를 쵸과적으로 사용한다는 것을 의미한다. C언어는 거의 어셈블리어 수준의 효율성을 자랑한다.
  • C언어는 저수준의 프로그래밍이 가능하다. 어셈블리 언어 만큼의 구체적인 하드웨어 제어가 가능하다. 어셈블리어는 사용하는 CPU에 따라서 프로그램을 변경시켜야 되는 치명적인 약점이 있지만 C언어로 임베디드 프로그램[각주:1]을 작성하게 되면 유지 관리가 쉬워진다. 포인터, 비트 단위의 조작으로 여러 하드웨어 장비를 섬세하게 제어할 수 있다.
  • C언어는 고수준의 프로그래밍도 가능하다. 모듈 단위의 프로그램 작성을 지원하고 분할 컴파일도 가능하기 때문에 고수준에서의 프로그램 작성도 가능하다. 하양식(top-down) 설계, 구조화 프로그래밍, 모듈화 설계 등의 소프트웨어 공학의 다양한 기법들을 적용할 수 있다.
  • C언어는 이식성이 뛰어나다. 한번 작성된 프로그램을 다른 CPU를 가지는 하드웨어로 쉽게 이식할 수 있다는 뜻이다. PC에서 개발된 프로그램도 컴파일만 다시 하면 슈퍼컴퓨터에서도 수행할 수 있다.
  • C언어의 단점. 초보자가 배우기가 어렵다는 것이다. 그만큼 산업 현장에서도 사용하는 언어이다.


  1. 특수 목적의 시스템으로 컴퓨터가 장치 안에 내장되어 있다. 하드웨어를 제어한다. 범용 컴퓨터 시스템과는 다르게 하나 혹은 몇 개의 미리 결정된 작업만을 수행한다. ex) MP3 플레이어, 스마트폰, 신호등 [본문으로]
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.