내가 보려고 적는 개발 용어들 - 1탄

hi_rice·2024년 8월 8일
0
post-thumbnail

📌 프로그램(program)
\rarr 명령어들의 집합

📌 컴퓨터(EDPS; Electronic Data Processing System)
\rarr 입력된 자료(Data)를 프로그램이라는 명령 순서에 따라 처리하여 그 결과를 사람이 알아볼 수 있도록 출력하는 전자(Electronic) 자료 처리(Data Processing) 시스템(System)
컴퓨터는 프로그램에 의해서 자동(Automatic)으로 처리되므로, ADPS(Automatic Data Processing System)라고도 한다.

📌 자료(Data)
\rarr 관찰이나 측정을 통해 수집한 단순한 사실이나 결과값을 말한다.
인간 또는 기계가 감지할 수 있도록 숫자, 문자, 기호 등을 이용하여 형식화 한 것.

📌 정보(information)
\rarr 의사 결정에 도움을 줄 수 있는 유용한 형태로, 자료를 가공(처리)한 것.

📌 GIGO(Garbage In Garbage Out)
\rarr 쓰레기(Garbage)가 들어가면 쓰레기가 나온다는 의미. 아무리 정확한 컴퓨터라도 '사람이 잘못된 자료를 입력하면 컴퓨터도 잘못된 결과를 출력한다'는 컴퓨터의 수동성을 뜻하는 말.

📌 하드웨어
\rarr 하드웨어(Hardware)는 딱딱한 제품이라는 의미로, 컴퓨터 시스템을 구성하는 물리적인 부품, 즉 기계적인 장치들을 말한다.
하드웨어는 중앙처리장치와 주변장치로 구성되고, 각각은 다음과 같이 구성된다.

  • 중앙처리장치 = 레지스터 + 제어장치 + 연산장치
  • 주변장치 = 입.출력장치 + 보조기억장치

📌 소프트웨어
\rarr 소프트웨어(Software)는 하드웨어의 반대 개념으로, 하드웨어를 사용하기 위한 각종 명령의 집합으로서 일반적으로 프로그램이라 부른다.
소프트웨어는 하드웨어 전체를 제어하고 운영하는 시스템 소프트웨어와 특정 업무를 처리하기 위한 응용 소프트웨어로 구분된다.

  • 소프트웨어 = 시스템 소프트웨어 + 응용 소프트웨어

📌 펌웨어(Firmware)
\rarr 펌웨어는 하드웨어의 동작을 지시하는 소프트웨어이지만 하드웨어적으로 구성되어 하드웨어의 일부분으로도 볼 수 있는 제품을 말한다.
주로 ROM에 반영구적으로 저장되어 하드웨어를 제어, 관리하는 역할을 수행한다.

📌 중앙처리장치
\rarr 중앙처리장치(CPU; Central Processing Unit)는 사람의 두뇌와 같이 컴퓨터 시스템에 부착된 모든 장치의 동작을 제어하고 명령을 실행하는 장치이다.
중앙처리장치는 제어장치, 연산장치, 레지스터로 구성된다.

📌 제어장치
\rarr 제어장치(Control Unit)는 컴퓨터에 있는 모든 장치들의 동작을 지시하고 제어하는 장치이다.

  • 제어장치는 명령 레지스터에서 읽어들인 명령어를 해독하여 해당하는 장치에게 제어 신호를 보내 정확하게 수행하도록 지시한다.
  • 제어장치는 프로그램 카운터(PC), 명령어 레지스터(IR), 부호기(제어신호 발생기), 명령어 해독기, 번지 해독기 등으로 구성되어 있다.
  • 명령어의 실행은 인출(Fetch) 단계, 간접(Indirect) 단계, 실행(Execute) 단계, 인터럽트(Interrupt) 단계를 거친다.

📌 부호기(Encoder)
\rarr 해독된 명령에 따라 각 장치로 보낼 제어 신호를 생성하는 회로.

📌 명령어 해독기(Decoder)
\rarr 명령 레지스터에 있는 명령어를 해독하는 회로.

📌 번지 해독기
\rarr 명령 레지스터에 있는 명령어가 가지고 있는 번지(직접, 간접 번지 등)를 해독하는 회로.

📌 인출(Fetch) 단계
\rarr 주기억장치로부터 명령어를 읽어 들여 해석하는 단계.

📌 간접(Indirect) 단계
\rarr 해석된 명령어의 주소가 간접주소인 경우에 수행하는 단계로, 유효주소를 계산하기 위해 주기억 장치를 한번 더 접근함.

📌 실행(Execute) 단계
\rarr 해석한 명령어를 실행하는 단계

📌 인터럽트(Interrupt) 단계
\rarr 인터럽트 발생 시 복귀주소를 저장시키고, 제어 순서를 인터럽트 처리 프로그램의 첫 번째 명령으로 옮기는 단계.

📌 연산장치
\rarr 연산장치(ALU; Arithmetic & Logic Unit)는 제어장치의 명령에 따라 실제로 연산을 수행하는 장치이다.

  • 연산장치가 수행하는 연산에는 산술연산, 논리연산, 관계연산, 이동(Shift) 등이 있다.
  • 연산장치는 가산기, 누산기(AC), 보수기, 데이터 레지스터, 상태 레지스터, 오버플로 검출기, 시프트 레지스터(Shift Register) 등으로 구성되어 있다.

📌 레지스터
\rarr 레지스터(Register)는 CPU 내부에서 처리할 명령이나 연산의 중간 결과값 등을 일시적으로 기억하는 임시 기억장소이다.

  • 레지스터는 메모리 중에서 속도가 가장 빠르다.
  • 레지스터에 새로운 데이터가 전송되면 기존에 있는 내용은 지워지고 새로운 내용만 기억된다.
  • 레지스터는 연산 속도를 향상시키기 위해 사용한다.

📌 프로그램 카운터, 프로그램 계수기(PC; Program Counter)
\rarr 다음 번에 실행할 명령어의 번지를 기억하는 레지스터

📌 명령 레지스터(IR; Instruction Register)
\rarr 현재 실행중인 명령의 내용을 기억하는 레지스터

📌 누산기(AC; Accumulator)
\rarr 연산된 결과를 일시적으로 저장하는 레지스터로 연산의 중심이 됨.

📌 상태 레지스터(Status Register), PSWR(Program Status Word Register), 플러그 레지스터(Flag Register)
\rarr 시스템 내부의 순간 순간의 상태가 기록된 정보를 PSW라고 함.
오버플로, 언더플로, 자리올림, 인터럽트 등의 PSW를 저장하고 있는 레지스터.
제어장치와 연산장치의 실행 순서를 제어하기 위해 사용되는 레지스터.

📌 메모리 주소 레지스터(MAR; Memory Address Register)
\rarr 기억장치를 출입하는 데이터의 번지를 기억하는 레지스터

📌 메모리 버퍼 레지스터(MBR; Memory Buffer Register)
\rarr 기억장치를 출입하는 데이터가 잠시 기억되는 레지스터.
버퍼 레지스터라고도 함.

📌 인덱스 레지스터(Index Register)
\rarr 주소의 변경, 서브루틴 연결 및 프로ㅓ그램에서의 반복 연산의 횟수를 세는 레지스터.

📌 데이터 레지스터(Data Register)
\rarr 연산에 사용될 데이터를 기억하는 레지스터.

📌 Shift Register
\rarr 클럭 펄스(Clock Pulse)에 의해서 기억된 내용을 왼쪽 또는 오른쪽으로 1Bit씩 자리를 이동시키는 레지스터.
2배 길이 레지스터라고도 함.

📌 클럭 펄스(Clock Pulse)
--> 컴퓨터 내부의 각 장치와 회로의 동작을 일정하게 유지시키기 위해 규칙적으로 발생하는 전기적인 신호 형태로 CPU 클럭이라고도 한다. 클럭 펄스의 발생 주기를 클럭 속도 또는 클럭 주파수라고 하며 단위는 Hz를 사용한다.

📌 마이크로프로세서
\rarr 마이크로프로세서(Microprocesser)는 제어장치, 연산장치, 레지스터가 하나의 대규모 집적회로 칩(IC)에 내장된 것으로, 개인용 컴퓨터(PC)에서 중앙처리장치로 사용되고 있다.

  • 마이크로프로세서는 클럭 주파수와 내부버스의 폭으로 성능을 평가한다.
  • 마이크로프로세서는 설계 방식에 따라 RISC와 CISC로 구분된다.
  • RISC 방식은 명령어의 종류가 적어 전력소비가 적고, 속도가 빠르지만 복잡한 연산을 수행하기 위해 명령어들을 반복, 조합해서 사용해야 하므로 레지스터를 많이 필요로 하고, 프로그램도 복잡하다.
  • CISC 방식은 명령어의 종류가 많아 전력 소비가 많고 명령어 설계가 어려워 고가이지만 레지스터를 적게 사용하므로 프로그램이 간단하다.

0개의 댓글

관련 채용 정보