여기서 저급, 고급이 언어의 품질과 관련된 말이 아닌, 0과 1이 난무하는 기계어와 비슷한지, 사람이 사용하는 자연어와 비슷한지를 나타내는 표현입니다.
저급 언어입니다.
아래와 같이 0과 1로 이루어져 있습니다.
0001 1001 1101 1000 1111 0010
기계어도 프로그래밍 언어이기 때문에 배운다면 프로그래밍을 할 수 있지만, 숫자만으로 나열되어 있는 코드를 이해하고 수정하는 것은 어려운 일입니다.
저급 언어입니다.
기계어와 일대일 대응이 되기 때문입니다.
숫자로 나열된 문장의 의미를 사람이 바로 알아볼 수 있는 명령어로 바꾸기만 해도 작업이 훨씬 편해집니다.
아래처럼요.
1000 1011 -> MOV
하지만 이렇게 되면 컴퓨터가 이해할 수 없게 됩니다.
컴퓨터는 숫자만 이해할 수 있으니까요.
즉, 어셈블리어로 작업한 것을 기계어로 번역하는 과정이 필요해지게 되는 것입니다.
이 기능을 하는 프로그램을 어셈블러(Assembler)라고 합니다.
현재 주로 사용되는 대다수의 언어는 고급언어입니다.
사람들이 이해하기 편리하게 만들어졌기 때문입니다. C, Python, Java 등이 있습니다.
c = a + b;
내용을 입력하세요.
고급언어 역시 컴퓨터가 이해하지 못합니다.
따라서 고급언어로 작업한 것을 기계어로 번역하는 과정이 필요하고, 이 기능을 하는 프로그램을 컴파일러(Compiler)라고 합니다.