안녕하세요. 스마트 팩토리입니다.
오늘은 프로그램밍 언어에 대해 알아보고 저급언어와 고급언어에 대해 알아보겠습니다. C언어도 프로그램밍 언어의 하나이 때문에 프로그램밍 언어에 대한 기본적인 내용을 알고 있으면 앞으로 어떻게 프로그램 언어가 발전해갈지에 대해 여러가지 생각해 볼 수 있습니다.
<<프로그래밍 언어>>
1. 프로그래밍 언어란?
프로그래밍 언어는 사람이 컴퓨터에게 지시할 명령어를 기술하기 위해서 만들어진 언어입니다. 이는 사람들이 사용하는 언어는 사람간의 대화를 통해 자신의 의사를 전달하고 다른 사람들의 의사를 이해하기 위해 사용하는 언어의 관점에서 사람간의 의사소통을 위해서 사용하는 것이 우리가 일상적으로 사용하는 언어 즉 한국 사람들끼리는 한국어, 미국인들 끼지를 영어를 사용하는 것과 같습니다. 아프리카 사람들과 대화를 하는데 한국말을 사용한다면 의사소통이 되지 않을 것입니다. 이런 관점에서 프로그래밍 언어는 사람과 기계 즉 컴퓨터가 서로 의사 교환을 하기 위해 만든 프로그램 언어입니다.
프로그래밍 언어를 배우려고 하면 자주 듣는 말이 저급 언어와 고급언어란 표현일 것입니다.
1. 저급언어와 고급언어란?
저급언어란 표현은 기계어를 생각하면 됩니다. 기계어란 (machine language) 말그대로 컴퓨터가 이해하는 언어입니다. 이는 초기 프로그래밍 과정에서 프로그래머가 컴퓨터에 지시할 명령을 말하는데 0과 1로 표현되는 프로그램 언어로 컴퓨터가 유일하게 직접 이해하는 언어입니다.
기계어를 구성하는 것은 연산코드와 피연산자가 있습니다. 연산코드란 메모리나 레지스트리에 데이터를 저장하거나 산술연산등을 수행하는 연산자에 대한 코드를 말합니다. 이는 앞으로 배우게될 내용으로 프로그램 즉 코딩을 하면서 자연스럽게 알게 됩니다. 피연산자란 메모리 주소나 레시스터 번호 등을 나타냅니다. 즉 연산자에 의해서 연산이 행해지는 것들을 말합니다.
기계어보다 조금 나은 언어로 어셈블리어가 있습니다. 기계어의 명령부와 번지부를 이해하기 쉬운 기호와 1:1 로 대응시켜 기호화한 프로그램으로 요약할 수 있습니다. 이는 기계어의 연산자와 피연자를 조금더 이해하기 쉽게 기호로 만들어 놓은 프로그램정도로 이해하면 될듯합니다.
이후에 코볼, 파스칼, 포트란, C언어가 등장하게 됩니다.
여기서 저급언어는 쉽게 말해 기계어와 가까운 언어, 컴퓨터에게 친근한 언어라는 관점에서 보면 기계어와 어셈블리어가 이에 해당됩니다.
코볼, 파스칼, 포트란에 대한 이야기는 따로 하지 않겠지만 기계어보다 조금더 나아진 정도로 보면 될듯합니다. 이후에 제 3세대 언어로 지금 서술하고자 하는 C언어가 1972년 나오게 됩니다.
고급언어란 말은 저급언어의 반대되는 개념으로 생각하면됩니다. 앞에서 말한 컴퓨터어 친근한 기계어가 아닌 사람과 친근한 언어를 말하는데 사람이 바로 이해할 수 있는 언어입니다. 인간이 이해하기 쉬운 프로그래밍 언어라고 보면 됩니다. 고급언어는 사람들이 쉽게 이해하고 배울 수 있는 언어입니다. 어셈블리어 이후로 나온 언어를 고급언어로 보면 되는데 시간이 지날수록 자연언어에 가까워져서 사람들이 보다 친근하게 컴퓨터를 다루고 접하게 되었습니다. 또한 다양한 무료 소스가 제공되어 프로그래밍 언어에 대한 막연한 두려움보다는 이제는 누구나 프로그램을 만들고 활용할 수 있는 시대로 접어들게 되었습니다.
다음 시간에는프로그램 구현 과정을 알아보겠습니다.
댓글