공부/신입 개발자 전공 지식 & 기술 면접 백과사전

[신입 개발자 전공 지식 & 기술 면접 백과사전] Computer Architecture : 컴퓨터의 구성

silver_ye 2023. 5. 2. 22:08

Computer Architecture🖥

목차 ✔
- 컴퓨터 구조 기초
- 컴퓨터의 구성
- 중앙처리장치(CPU) 작동 원리
- 캐시 메모리
- 고정 소수점 & 부동 소수점
- 패리티 비트 & 해밍 코드 
- ARM 프로세서

 

2. 컴퓨터의 구성

하드웨어 : 컴퓨터를 구성하는 기계적 장치
소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어 집합

 

2-1) 하드웨어

  • 중앙처리장치(CPU)
  • 기억장치 : RAM, HDD
  • 입출력 장치 : 마우스, 프린터 등
  • 위의 친구들은 시스템 버스로 연결됨
    • 시스템 버스는 데이터와 명령 제어 신호를 각 장치로 옮겨가는 역할
중앙처리장치(CPU:Central Processing Unit)
  • 컴퓨터의 뇌 역할
  • 컴퓨터의 명령어 해석, 자료의 연산, 비교 등 처리를 제어하는 장치(산술논리연산장치 + 제어장치 + 레지스터)
  • 산술논리연산장치(ALU:Arithmetic Logic Unit) :비교와 연산을 담당
  • 제어장치 : 명령어의 해석과 실행을 담당
  • 레지스터 : 속도가 빠른 데이터 기억장소
기억장치
  • 프로그램, 데이터, 연산의 중간 결과를 저장하는 장치
  • 기억 장치 기능에 따라 주기억장치, 보조기억장치로 나누어짐
  • 실행중인 프로그램과 같은 프로그램에 필요한 데이터를 일시적으로 저장
  • 주기억장치 : CPU가 직접 접근하여 데이터를 처리할 수 있는 기억장치
    • ROM(Read Only Memory) : 읽기만 가능한 기억장치
    • RAM(Random Access Memory) : 읽고 쓰기가 가능한 기억장치
  • 보조기억장치 : 주기억장치에 비해 속도는 느리지만 많은 자료를 영구적으로 보관
    • 하드디스크, CD-ROM, DVD
입출력장치
  • 입력 장치 : 컴퓨터 내부로 자료를 입력하는 장치(키보드, 마우스 등)
  • 출력 장치 : 컴퓨터에서 외부로 표현하는 장치(프린터, 모니터, 스피커 등)
시스템 버스
  • CPU와 시스템과 다른 요소들 사이에서 정보를 교환할 수 있게 도와주는 통로 역할
  • 용도에 따라 데이터 버스, 주소 버스, 제어 버스로 나뉘어짐
  • 데이터 버스(Data Bus)
    • 중앙처리장치와 기타 장치 사이에서 데이터를 전달하는 통로
    • 주소 버스가 위치 정보를 전달하면 데이터가 데이터 버스를 타고 목적지까지 이동
    • 기억장치와 입출력장치의 명령어와 데이터를 중앙처리장치로 보내거나, 중앙처리장치의 연산 결과를 기억장치와 입출력장치로 보내는 양방향 버스
  • 주소 버스(Address Bus)
    • 데이터를 읽고 쓸 때, 어느 위치에서 작업할 것인지에 대한 위치 주소를 가짐
    • 데이터를 정확하게 옮기기 위해서는 기억장치 주소를 정해주어야함
    • 중앙처리장치가 주기억장치나 입출력장치로 기억장치 주소를 전달하는 통로로 단방향 버스
  • 제어 버스(Control Bus)
    • 어떤 작업을 지시할 지에 대한 제어 신호를 가짐
    • 주소 버스와 데이터 버스는 모든 장치에 공유되기 때문에 이를 제어할 수단이 필요
    • 중앙처리장치가 기억장치나 입출력장치에 제어 신호를 전달하는 통로
    • 제어 신호 종류 : 기억장치 읽기 및 쓰기, 버스 요청 및 승인, 인터럽트 요청 및 승인, 클락, 리셋 등
    • 읽기, 쓰기 동작을 모두 수행하기 떄문에 양방향 버스
  • 컴퓨터는 기본적으로 읽고 처리한 뒤 저장하는 과정(READ → PROCESS → WRITE)
    • 이 과정을 진행하면서 끊임없이 주기억장치(RAM)과 소통하게 됨. 이때 운영체제가 64bit라면, CPU는 RAM으로부터 데이터를 한번에 64비트씩 읽어옴

 

 

 

출처 : https://github.com/gyoogle/tech-interview-for-developer