📌 프로그램(program)
명령어들의 집합
📌 컴퓨터(EDPS; Electronic Data Processing System)
입력된 자료(Data)를 프로그램이라는 명령 순서에 따라 처리하여 그 결과를 사람이 알아볼 수 있도록 출력하는 전자(Electronic) 자료 처리(Data Processing) 시스템(System)
컴퓨터는 프로그램에 의해서 자동(Automatic)으로 처리되므로, ADPS(Automatic Data Processing System)라고도 한다.
📌 자료(Data)
관찰이나 측정을 통해 수집한 단순한 사실이나 결과값을 말한다.
인간 또는 기계가 감지할 수 있도록 숫자, 문자, 기호 등을 이용하여 형식화 한 것.
📌 정보(information)
의사 결정에 도움을 줄 수 있는 유용한 형태로, 자료를 가공(처리)한 것.
📌 GIGO(Garbage In Garbage Out)
쓰레기(Garbage)가 들어가면 쓰레기가 나온다는 의미. 아무리 정확한 컴퓨터라도 '사람이 잘못된 자료를 입력하면 컴퓨터도 잘못된 결과를 출력한다'는 컴퓨터의 수동성을 뜻하는 말.
📌 하드웨어
하드웨어(Hardware)는 딱딱한 제품이라는 의미로, 컴퓨터 시스템을 구성하는 물리적인 부품, 즉 기계적인 장치들을 말한다.
하드웨어는 중앙처리장치와 주변장치로 구성되고, 각각은 다음과 같이 구성된다.
📌 소프트웨어
소프트웨어(Software)는 하드웨어의 반대 개념으로, 하드웨어를 사용하기 위한 각종 명령의 집합으로서 일반적으로 프로그램이라 부른다.
소프트웨어는 하드웨어 전체를 제어하고 운영하는 시스템 소프트웨어와 특정 업무를 처리하기 위한 응용 소프트웨어로 구분된다.
📌 펌웨어(Firmware)
펌웨어는 하드웨어의 동작을 지시하는 소프트웨어이지만 하드웨어적으로 구성되어 하드웨어의 일부분으로도 볼 수 있는 제품을 말한다.
주로 ROM에 반영구적으로 저장되어 하드웨어를 제어, 관리하는 역할을 수행한다.
📌 중앙처리장치
중앙처리장치(CPU; Central Processing Unit)는 사람의 두뇌와 같이 컴퓨터 시스템에 부착된 모든 장치의 동작을 제어하고 명령을 실행하는 장치이다.
중앙처리장치는 제어장치, 연산장치, 레지스터로 구성된다.
📌 제어장치
제어장치(Control Unit)는 컴퓨터에 있는 모든 장치들의 동작을 지시하고 제어하는 장치이다.
📌 부호기(Encoder)
해독된 명령에 따라 각 장치로 보낼 제어 신호를 생성하는 회로.
📌 명령어 해독기(Decoder)
명령 레지스터에 있는 명령어를 해독하는 회로.
📌 번지 해독기
명령 레지스터에 있는 명령어가 가지고 있는 번지(직접, 간접 번지 등)를 해독하는 회로.
📌 인출(Fetch) 단계
주기억장치로부터 명령어를 읽어 들여 해석하는 단계.
📌 간접(Indirect) 단계
해석된 명령어의 주소가 간접주소인 경우에 수행하는 단계로, 유효주소를 계산하기 위해 주기억 장치를 한번 더 접근함.
📌 실행(Execute) 단계
해석한 명령어를 실행하는 단계
📌 인터럽트(Interrupt) 단계
인터럽트 발생 시 복귀주소를 저장시키고, 제어 순서를 인터럽트 처리 프로그램의 첫 번째 명령으로 옮기는 단계.
📌 연산장치
연산장치(ALU; Arithmetic & Logic Unit)는 제어장치의 명령에 따라 실제로 연산을 수행하는 장치이다.
📌 레지스터
레지스터(Register)는 CPU 내부에서 처리할 명령이나 연산의 중간 결과값 등을 일시적으로 기억하는 임시 기억장소이다.
📌 프로그램 카운터, 프로그램 계수기(PC; Program Counter)
다음 번에 실행할 명령어의 번지를 기억하는 레지스터
📌 명령 레지스터(IR; Instruction Register)
현재 실행중인 명령의 내용을 기억하는 레지스터
📌 누산기(AC; Accumulator)
연산된 결과를 일시적으로 저장하는 레지스터로 연산의 중심이 됨.
📌 상태 레지스터(Status Register), PSWR(Program Status Word Register), 플러그 레지스터(Flag Register)
시스템 내부의 순간 순간의 상태가 기록된 정보를 PSW라고 함.
오버플로, 언더플로, 자리올림, 인터럽트 등의 PSW를 저장하고 있는 레지스터.
제어장치와 연산장치의 실행 순서를 제어하기 위해 사용되는 레지스터.
📌 메모리 주소 레지스터(MAR; Memory Address Register)
기억장치를 출입하는 데이터의 번지를 기억하는 레지스터
📌 메모리 버퍼 레지스터(MBR; Memory Buffer Register)
기억장치를 출입하는 데이터가 잠시 기억되는 레지스터.
버퍼 레지스터라고도 함.
📌 인덱스 레지스터(Index Register)
주소의 변경, 서브루틴 연결 및 프로ㅓ그램에서의 반복 연산의 횟수를 세는 레지스터.
📌 데이터 레지스터(Data Register)
연산에 사용될 데이터를 기억하는 레지스터.
📌 Shift Register
클럭 펄스(Clock Pulse)에 의해서 기억된 내용을 왼쪽 또는 오른쪽으로 1Bit씩 자리를 이동시키는 레지스터.
2배 길이 레지스터라고도 함.
📌 클럭 펄스(Clock Pulse)
--> 컴퓨터 내부의 각 장치와 회로의 동작을 일정하게 유지시키기 위해 규칙적으로 발생하는 전기적인 신호 형태로 CPU 클럭이라고도 한다. 클럭 펄스의 발생 주기를 클럭 속도 또는 클럭 주파수라고 하며 단위는 Hz를 사용한다.
📌 마이크로프로세서
마이크로프로세서(Microprocesser)는 제어장치, 연산장치, 레지스터가 하나의 대규모 집적회로 칩(IC)에 내장된 것으로, 개인용 컴퓨터(PC)에서 중앙처리장치로 사용되고 있다.