소스코드와 명령어

song·2023년 4월 2일
0

고급 언어와 저급 언어

고급 언어로 작성된 소스 코드를 실행시키려면 저급 언어(명령어)로 변환해야 함

고급 언어

  • 사람을 위한 언어
  • 대부분의 프로그래밍 언어(C, C++, Java, Python 등등)

저급 언어

  • 컴퓨터가 직접 이해하고 실행할 수 있는 언어
  • 명령어로 이루어짐
  • 2가지 종류(기계어, 어셈블리어) 존재
    • 기계어
      • 0과 1로 이루어진 명령어
      • 2진수로 나열하면 가독성이 낮기에 16진수로 표현하기도 함
      • 컴퓨터만을 위해 만들어진 언어로 사람이 이해하기 어려움

        그래서 어셈블리어가 등장

    • 어셈블리어
      • 0과 1로 표현된 명령어(기계어)를 읽기 편한 형태로 번역한 언어
      • 일반 개발자는 사용할 일이 낮음(예외_임베디드 개발자, 게임 개발자, 정보 보안 분야 등)

컴파일, 인터프리터

고급 언어를 저급 언어로 변환하는 방식은 2가지가 있다

컴파일 언어

  • 컴파일 방식으로 작동하는 프로그래밍 언어를 컴파일 언어라고 함
  • 소스 코드 전체가 저급 언어로 변환
  • 소스 코드에 오류가 하나라도 있으면 컴파일 실패
  • 대표적으로 C언어

인터프리트 언어

  • 인터프리트 방식으로 작동하는 프로그래밍 언어를 인터프리터 언어라고 함
  • 소스 코드가 한 줄 씩 실행
  • 한 줄 씩 대화하듯 실행하기에 소스 코드 전체를 변환하는 시간을 기다릴 필요없음
    (그렇다고 컴파일 언어보다 빠르진 않음. 컴파일 결과인 목적 코드는 저급 언어지만, 인터프리터 언어는 소스 코드에 마지막 줄까지 저급 언어로 해석하며 실행해야 하기에)
  • 소스 코드 내 오류를 발견하면 오류 전까지 실행함

<출처>
"혼자 공부하는 컴퓨터구조+운영체제".강민철.https://www.youtube.com/playlist?list=PLVsNizTWUw7FCS83JhC1vflK8OcLRG0Hl (2023.04.02)


책과 강의를 통해 학습한 내용을 요약 정리했습니다.
profile
인간은 적응의 동물

0개의 댓글