# [제 1 장] 프로그래밍언어 개요 ###### tags: `C언어` (c언어 공부를 위한 교재로 perfectC(3판)을 사용함) <br> ## 1.1 '프로그램'은 무엇일까? - 프로그래밍 언어 - 사람과 컴퓨터가 서로 의사교환을 하기 위한 언어. $\quad$즉 사람이 컴퓨터에게 지시할 명령어를 기술하기 위하여 만들어진 언어 - 예) 포트란, 알골, 베이직, 코볼, 파스칼, C, C++, visual basic, $\qquad$자바, objective-C, JSP, 자바스크립트, 파이썬, C#, Go, Swift, Kotlin 등 <span style="font-size:11px"><span style="color:grey">$\qquad$(존 베커스가 만든 포트란은 최초의 프로그래밍 언어가 아니라 최초의 대중화된 프로그래밍 언어. 최초의 언어는 에이다가 만든 ADA)</span></span> <br> ## 1.2 프로그래밍 언어의 계층과 번역 - <span style="font-size:10px"> $\ 컴퓨터 \begin{cases} \text{물리적부품인 하드웨어 : 중앙처리장치(CPU)(연산장치, 제어장치로 나뉘며 이들은 곧 칩=프로세서이다), 주기억장치,보조기억장치(SSD), 입력장치(키보드, 마우스), 출력장치(프린트기)} \\ \\ \text{하드웨어를 작동하게하는 소프트웨어 : 컴퓨터가 수행할 작업을 지시하는 전자적 명령어들의 집합으로 구성된 프로그램(어플?)} \end{cases}$</span> $\qquad$$\qquad$$\qquad$$\qquad$$\qquad$$\qquad$$\qquad$ <span style="font-size:8px"> $\ : \begin{cases} \text{시스템 소프트웨어 : 컴퓨터가 잘 작동하도록 도와주는 기본 소프트웨어 } \\ \text{ (기본소프트웨어에는 특정 CPU에 맞게,} \\ \text{ 관련된 하드웨어를 작동하게 하고 응용소프트웨어를 실행해주는 소프트웨어인 운영체제} \\ \text{ (예.. 컴퓨터: 유닉스, 리눅스, 윈도우, 맥OS 등, 스마트폰: 안드로이드, ios 등)와} \\ \text{ 운영체제를 돕고 컴퓨터 시스템이 원활하게 작동하도록 돕는 각종 유틸리티 프로그램이 있다.)} \\ \\ \text{응용 소프트웨어 : 문서 작성이나 인터넷 검색, 게임, 동영상 등과 같은 특정 업무에 활용되는 다양한 소프트웨어} \end{cases}$</span> <br> ## 1.3 왜 C언어를 배워야 할까? <br> ## 1.4 프로그래밍의 자료표현 <br> ## 1.5 소프트웨어 개발 <br> ## 1.6 다양한 '프로그래밍 언어'