프로그래밍 언어란 인간과 컴퓨터간의 대화를 가능하게 해주는, 혹은 컴퓨터에게 명령을 내릴 수 있도록 해주는 '중간언어'라고 정의 내릴 수 있습니다.
컴퓨터에게 어떠한 행동을 명령하고 그 결과물을 저에게 모니터를 통해 출력해 달라는 명령을 하고 싶습니다.
육성으로 "야 컴퓨터, 10+10을 계산해서 결과가 뭔지 나한테 알려줘" 라고 하면 컴퓨터가 사람 말을 알아듣고 그 액션을 취할까요? 불가능합니다. 물론 음성인식 같은 기술을 통하여 그러한 컴퓨터를 만들어 낼 수야 있겠지만, 지금은 그 이야기를 하려는 것이 아닙니다.
그럼 어떻게 해야 컴퓨터와 대화를 할 수 있을까요?
- 우리는 '인간의 언어'를 사용합니다.
- 컴퓨터는 1과 0의 나열들로 표현되는 2진코드, 즉 '기계어'를 사용합니다.
1) 내가 기계어를 완벽히 익힌다 → 매우 비효율적
2) 컴퓨터에게 인간의 언어를 가르친다 → 현재 기술로 불가능
3) 나와 컴퓨터 모두가 이해할 수 있는 언어(프로그래밍 언어)를 만든다 → 가능
즉, 프로그래밍 언어란 '사용자'와 '컴퓨터' 모두가 알아들을 수 있는 중간 단계의 언어라고 정의내릴 수 있습니다.
이렇게 해서 프로그래밍 언어를 통하여 우리와 컴퓨터가 대화를 할 수 있는 겁니다. C언어 역시 프로그래밍 언어들 중 하나입니다.
단, 한 가지 주의할 점이 있습니다.
우리 인간은 가령 '친구야 학교가자', '마 학교 가자', '야 학교 ㄱㄱ' 등등 조금씩 다르게 말해도 알아듣죠? 이것은 우리 인간은 유연성 있는 언어를 사용하기 때문입니다.
하지만, 컴퓨터는 그렇지 않습니다. 철자 하나만 틀려도 에러를 내버립니다. 컴파일러가 철자 하나만 틀려도 해석을 해주지 못하기 때문입니다. 이 점 때문에 우리가 인간의 언어보다는 프로그래밍 언어를 더 딱딱하게 느낄 수 있지만 약간의 노력만 있다면 충분히 쉽게 익힐 수 있습니다.
'프로그래밍 언어 > C' 카테고리의 다른 글
(C언어) 5 - printf 함수 (0) | 2020.05.14 |
---|---|
(C언어) 4 - 변수 (0) | 2020.05.14 |
(C언어) 3 - C 코드 구조 (0) | 2020.05.14 |
(C언어) 2 - 컴퓨터와 2진수 (0) | 2020.05.14 |
(C언어) 1 - C언어로 프로그램이 제작되는 과정 (0) | 2020.05.14 |