컴퓨터 언어(Computer Language)는 인간과 컴퓨터 사이의 의사소통에 사용되는 언어를 말한다. 컴퓨터 언어는 인간과 컴퓨터 사이에 정보를 전달하는 매체입니다.
컴퓨터 프로그래밍 언어의 발전은 기계어, 어셈블리어, 고급언어로 이어지는 과정을 거쳐왔다.
컴퓨터 언어는 크게 세 가지 범주로 나뉜다:
-저급 언어
-고급 언어
-특수 목적 언어
1. 저수준 언어
-기계 언어, 어셈블리 언어 및 기호 언어.
-어셈블리 언어 소스 프로그램을 어셈블하여 객체 파일을 생성한 후 실행해야 합니다.
2. 고급 언어
-BASIC(Truebasic, Qbasic, VirtualBasic), C, PASCAL, FORTRAN, 지능형 언어(LISP, Prolog) 등
-고급 언어 소스 프로그램은 해석과 컴파일의 두 가지 방법으로 실행될 수 있습니다. 일반적으로 후자를 사용합니다.
우리가 사용하는 C 언어는 후자를 사용합니다.
3. 특수 언어
CAD 시스템의 도면 언어와 DBMS의 데이터베이스 쿼리 언어입니다.
1.1. 기계어
전자컴퓨터는 "0"과 "1"로 구성된 이진수를 사용합니다. 컴퓨터 발명 초기에 사람들은 컴퓨터에게 이것저것 하라고 명령하기 위해 컴퓨터 언어만을 사용할 수 있었습니다. 한마디로 컴퓨터에 대한 "0"과 "1"로 구성된 일련의 명령 시퀀스를 작성하는 것이었습니다. , 컴퓨터가 이해할 수 있는 이런 종류의 언어가 기계어입니다. 기계어를 사용하는 것은 매우 고통스러운 일입니다. 특히 프로그램에 오류가 있어서 수정해야 할 경우에는 더욱 그렇습니다.
그래서 프로그램은 바이너리 파일입니다. 기계어의 한 조각이 명령이 됩니다. 명령어는 분할할 수 없는 가장 작은 기능 단위입니다. 또한, 컴퓨터마다 명령어 체계가 다른 경우가 많아 한 컴퓨터에서 실행된 프로그램을 다른 컴퓨터에서 실행하려면 또 다른 프로그램을 프로그래밍해야 하므로 작업이 중복되는 경우가 있다. 그러나 특정 컴퓨터 모델에 특화된 언어를 사용하기 때문에 모든 언어 중에서 계산 효율성이 가장 높습니다. 기계어는 컴퓨터 언어의 1세대입니다.
1.2. 어셈블리 언어
기계어로 프로그래밍하는 고통을 줄이기 위해 사람들은 유용한 개선을 이루었습니다. 예를 들어 "ADD"를 사용하여 추가를 나타내고 "MOV"를 사용하여 데이터 전송 등을 나타내는 이진 문자열 명령입니다. 이러한 방식으로 사람들은 프로그램이 수행하는 작업, 오류 수정 및 유지 관리를 쉽게 읽고 이해할 수 있습니다. 이런 종류의 프로그래밍 언어를 2세대 컴퓨터 언어인 어셈블리 언어라고 합니다. 그러나 컴퓨터는 이러한 기호를 인식하지 못하므로 이러한 기호를 이진수 기계어로 번역하는 특수 프로그램이 필요합니다. 이 번역 프로그램을 어셈블러라고 합니다.
어셈블리 언어도 기계 하드웨어에 대한 의존도가 높고 이식성이 떨어지지만 여전히 효율성이 매우 높습니다. 특정 컴퓨터 하드웨어용으로 컴파일된 어셈블리 언어 프로그램은 컴퓨터 하드웨어의 기능과 특성을 정확하게 활용할 수 있으며, 프로그램도 마찬가지입니다. 그리고 품질이 높기 때문에 여전히 널리 사용되고 강력한 소프트웨어 개발 도구입니다.
1.3.고급 언어
1.3.1.고급 언어의 발달
컴퓨터와 소통하는 초기의 고통스러운 경험에서 사람들은 다음과 같은 사실을 깨달았습니다. 이런 종류의 언어는 수학적 언어나 인간의 자연어에 가깝고 동시에 컴퓨터 하드웨어에 의존하지 않으며 컴파일된 프로그램은 모든 기계에서 보편적으로 사용될 수 있습니다.
노력 끝에 1954년, 기계 하드웨어와 완전히 독립된 최초의 고급 언어인 FORTRAN이 탄생했습니다. 지난 40년 동안 수백 개의 고급 언어가 등장했고 그중 수십 개가 훌륭합니다. 더 일반적으로 사용되는 것은 FORTRAN, ALGOL, COBOL, BASIC, LISP, SNOBOL, PL/1, Pascal, C, PROLOG, Ada, C, VC, VB, Delphi, JAVA 등입니다.
특별 언급: C 언어가 탄생하기 전에는 시스템 소프트웨어가 주로 어셈블리 언어로 작성되었습니다. 어셈블리 언어 프로그램은 컴퓨터 하드웨어에 의존하기 때문에 가독성과 이식성이 매우 떨어지지만, 일반 고급 언어에서는 컴퓨터 하드웨어를 직접 동작시키기 어렵다(이것이 어셈블리 언어의 장점이다). 어셈블리 언어와 고급언어의 특징을 결합한 새로운 언어, C언어.
고급 언어의 발전 역시 초기 언어에서 구조화된 프로그래밍 언어로, 프로세스 지향 프로그래밍 언어에서 비절차적 프로그래밍 언어로의 과정을 거쳤습니다. 그에 따라 소프트웨어 개발도 개별 수동 작업장의 초기 폐쇄형 생산에서 산업화된 조립 라인 산업 생산으로 발전했습니다.
1960년대 중후반에는 소프트웨어가 점점 많아지고 규모도 점점 커지는데, 기본적으로 소프트웨어 제작은 사람이 직접 하는 것이 부족했습니다. 표준화된 시스템 계획, 테스트, 평가 표준은 막대한 비용을 들여 구축된 수많은 소프트웨어 시스템에 오류가 포함되어 있어 사용할 수 없으며 심지어 막대한 손실을 초래합니다. 점점 신뢰성이 떨어지는 느낌이 들기 때문에 오류가 없는 소프트웨어는 거의 없습니다. 이 모든 일은 컴퓨터 산업에 큰 충격을 주었고 역사상 '소프트웨어 위기'로 알려졌습니다. 사람들은 큰 프로그램을 준비하는 것이 작은 프로그램을 작성하는 것과는 다르다는 것을 알고 있습니다. 그것은 새로운 기술이어야 하며 소프트웨어 개발의 전체 과정은 엔지니어링처럼 다루어져야 합니다. 프로그램은 정확성을 쉽게 보장하고 정확성을 쉽게 확인할 수 있도록 설계되어야 합니다. 1969년에 구조적 프로그래밍 방법이 제안되었고, 1970년에 최초의 구조적 프로그래밍 언어인 파스칼 언어가 등장하여 구조적 프로그래밍 시대가 시작되었습니다.
1980년대 초반부터 소프트웨어 설계 사고에 또 다른 혁명이 일어났고, 그 결과 객체지향 프로그래밍이 탄생했습니다. 이전에는 고급 언어는 거의 모두 프로세스 지향적이었고, 프로그램 실행은 파이프라인과 유사했습니다. 모듈이 실행되기 전에는 사람들이 다른 일을 할 수 없었고, 실행 방향을 동적으로 변경할 수도 없었습니다. 프로그램. 이는 사람들이 일상적인 일을 처리하는 방식과 일치하지 않습니다. 즉, 사람들은 어떤 일이 발생하면 프로세스 지향적이 아니라 특정 응용 프로그램 기능을 지향해야 합니다. , 개체.) 이 방법은 하드웨어의 집적 회로와 마찬가지로 소프트웨어를 통합하여 소프트웨어 통합 블록이라고 하는 일반적이고 긴밀하게 패키지된 기능 모듈을 생성하는 것입니다. 이 모듈은 특정 응용 프로그램과 관련이 없지만 서로 결합하여 특정 기능을 완성할 수 있습니다. 응용 프로그램 기능과 동시에 재사용이 가능합니다. 사용자의 경우 인터페이스(입력 볼륨, 출력 볼륨)와 구현 가능한 기능만 고려하면 사용자는 C, VirtualBasic 등의 내부 문제를 전혀 신경 쓸 필요가 없습니다. 델파이가 대표적이다.
고급 언어의 다음 개발 목표는 애플리케이션 지향입니다. 즉, 프로그램에 원하는 작업만 지시하면 프로그램이 자동으로 알고리즘을 생성할 수 있습니다. 자동으로 처리하는 비절차적 프로그래밍 언어입니다.
오픈 카테고리:
컴퓨터 프로그래밍 언어, 기계 언어, 어셈블리 언어