[자바] 프로그래밍이란? / 프로그래밍 기초이론

2020. 2. 12. 21:55·SW 공학 & 프로그래밍 언어/Java
728x90
반응형

사람( 언어 ) <---> 컴퓨터( 기계어 )

사람과 컴퓨터 둘 사이에는 소통이 필요한 언어가 필요합니다.

 

여기서 말한 언어란?

언어(사람의 언어)와 기계어(컴퓨터의 언어)의 다리 역할을 하는 프로그래밍 언어를 뜻합니다.

 

언어 : 사람들이 사용하고 이해할수 있는 언어
프로그래밍 언어: 대부분 영어로 이루어져 있다.
기계어: 0 과 1로 이루어진 이진코드

 

프로그래밍 언어는 크게 2가지로 나뉜다. 

  1. 고급언어( C, C++, JAVA, 파이썬 등등 ) ----------- ( 사람이 쉽게 접근하고 이해할 수 있는 언어)
  2. 저급언어( 어셈블리어 ) ---------------------------- ( 기계어에 가까운 언어 )

이 프로그래밍 언어가 기계어로 바꿔주는 것을 컴파일(compile)이라고 합니다. 

 

 

컴파일 과정

위 그림과 같이 아래의 절차를 보면:

  1. 사람이 고급언어 작성한 행위를 '프로그래밍'
  2. 프로그래밍 된 파일은 '소스코드' 또는 '소스파일'
  3. 소스코드를 기계가 이해할 수 있도록 컴파일러라는 소프트웨어가 컴파일하여 기계어로 변환
  4. 기계어로 된 이진코드를 컴퓨터가 실행

위 내용들을 통해 프로그래밍이 어떻게 해서 어떻게 컴퓨터가 이해하는지 알게 되었을 것 입니다. 

 

※ 요약하자면

사람이 프로그래밍하여 작성한 소스코드를 컴파일러가 기계어로 변환하여(컴파일) 컴퓨터가 실행하는 것 입이다.

즉, 이러한 모든 과정을 프로그램(program)이라고 불립니다.

728x90
반응형

'SW 공학 & 프로그래밍 언어 > Java' 카테고리의 다른 글

[자바] 데이터 타입 ( 변수 선언시 고려할 사항)  (1) 2020.03.22
[자바] 변수 이름(naming) / 초기화 및 리터럴 / 변수 사용 범위  (5) 2020.03.18
[자바] JAVA 공부 기록  (0) 2020.02.12
[자바] 리눅스, JDK / 이클립스 설치  (0) 2020.02.11
스프링 공부 기록  (2) 2020.01.06
'SW 공학 & 프로그래밍 언어/Java' 카테고리의 다른 글
  • [자바] 데이터 타입 ( 변수 선언시 고려할 사항)
  • [자바] 변수 이름(naming) / 초기화 및 리터럴 / 변수 사용 범위
  • [자바] JAVA 공부 기록
  • [자바] 리눅스, JDK / 이클립스 설치
크크크크
크크크크
공뷰를 합시다.
    반응형
  • 크크크크
    Tom's Note
    크크크크
  • 전체
    오늘
    어제
    • 분류 전체보기 (128)
      • IT 지식 (4)
      • CS (66)
        • 알고리즘 & 자료구조 (19)
        • 운영체제 (41)
        • 네트워크 (1)
        • 데이터베이스 (5)
      • 보안 (6)
      • SW 공학 & 프로그래밍 언어 (5)
        • Java (28)
        • 디자인 패턴 (1)
        • 형상관리 (2)
        • 톰캣(WAS) (2)
        • SW 방법론 (3)
        • 스프링부트 (5)
      • 시스템 설계 (4)
        • Docker (2)
      • 자격증 (2)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      su
      apropos
      DTO
      스프링부트
      Chage
      DI
      man
      분석기법
      ADsP
      1급
      REST API
      단반향
      /etc/passwd
      usermod
      docker
      which
      whereis
      문제해결
      2차
      리눅스
      불변
      java
      알고리즘
      whatis
      chmod
      비트연산
      cifs
      암호설정
      자바
      passwd
    • 최근 댓글

    • 최근 글

    • 250x250
    • hELLO· Designed By정상우.v4.10.3
    크크크크
    [자바] 프로그래밍이란? / 프로그래밍 기초이론
    상단으로

    티스토리툴바