14. 기본 컴퓨터 프로그래밍
프로그래밍 일반
일반적으로 컴퓨터는 하드웨어와 소프트웨어로 구성된다. 소프트웨어는 크게 시스템 소프트웨어와 응용 소프트웨어로 나눌 수 있다.
프로그램 종류
프로그램 처리과정
프로그래머는 일반 고급언어로 프로그램을 작성하며 기계가 이해할 수 있는 이진 프로그램으로 변환할 필요성이 있기에 컴파일 언어가 등장했다.
기계어
프로그램은 정해진 업무를 처리하기 위해 존재하는데 다음과 같은 구성으로 이루어 진다.
- 이진 코드 : 메모리상에 나타나는 형태의 명령어로 이진수 명령어와 피연산자의 시퀀스 임
- 8/16 진수 : 이진수 코드를 편의상 8/16진수 형태로 표현
- 기호 코드 : 연산/주소에 대해 기호를 사용하며 각 기호 명령어는 하나의 이진 코드로 번역되는데 이를 어셈블러가 담당
고급 프로그래밍 언어는 컴퓨터 하드웨어의 동작을 염두하지 않고 문제 해결의 관점에 맞춰 개발한 것이며, C/C#/Java 등이 대표적이다. 이들을 컴파일러형 언어라고 한다.
프로그래밍 언어간 관계
2/16진 프로그램
기호연산/어셈블리어 프로그램
C언어 프로그램
어셈블리어
프로그래밍 언어는 일정한 규칙에 의해 정의되므로 해당 언어의 형식 규정을 잘 지켜야 한다. 모든 컴퓨터는 각 어셈블리어를 가지고 있으며 해당 규칙들은 제조 업체로부터 출판된다.
어셈블리어의 언어 규칙
- 라벨 필드 : 기호 주소를 나타내거나 빈칸
- 기호 주소는 세 개 이하의 영문/숫자들로 구성, 첫자는 문자
- 명령어 필드 : 기계 명령어나 슈도 명령어 기술
- 메모리 참조 명령어(MRI)
- 레지스터 참조 또는 입출력 명령(non-MRI)
- 슈도 명령어
- 코멘트 필드 : 명령어에 해단 주석 혹은 해설, 생략 가능