Mint Flavor Chocolate DEV

컴퓨터의 기본구조 본문

컴퓨터 구조

컴퓨터의 기본구조

츠르e 2017. 9. 19. 00:22

컴퓨터의 기본구조


1) 주기억장치

  • CPU 가까이 위치, 반도체 기억장치 칩들로 구성
  • 고속 엑세스
  • 가격 ↑ 면적 많이 차지 -> 저장용량의 한계
  • 일시적 저장장치로 사용

2) 보조저장장치

  • 2차 기억장치
  • 저장밀도 ↑, 비트당 가격 낮음
  • 읽기/쓰기 느림
  • 영구저장 : HDD, 플래시메모리, CD-ROM 등

정보의 표현과 저장


프로그램 코드

  • 기계어 : 기계코드, 컴퓨터 하드웨어 부품들이 이해할 수 있는 언어, 2진 비트들로 구성
  • 어셈블리어 : 고급언어와 기계어 사이의 중간언어, 어셈블리어로 번역시, 기계어와 일대일 대응
  • 고급언어 : 이해하기 쉬운 언어, C/C++/PASCAL/FORTRAN/COBOL 등, 컴파일러를 이용하여 기계어로 번역

프로그램 번역 소프트웨어

  • 컴파일러 : 고급언어 → 기계어로 번역하는 소프트웨어
  • 어셈블러 : 어셈블리 프로그램 → 기계어로 번역
    ※ 니모닉스 : 연상코드 예)ADD, STOR

기계 명령어의 형식

  • 연산코드 : CPU가 수행할 연산을 지정해주는 비트들 예) 비트수 3이면 연산의 최대 수 2에3승 = 8개
  • 오퍼랜드 : 연산에 사용될 데이터 혹은 그것의 주소

시스템의 구성

  • 시스템버스 : CPU와 기억장치간의 정보전달
    => 주소버스(단방향, CPU로부터 기억장치 or I/O장치들로), 데이터버스, 제어버스(양방향, 읽기/쓰기 모두지원)
    => 주소버스의 비트수 = 16비트 --> 최대 2에16승=64K개의 기억장소들의 주소지정 가능
    => 데이터버스 폭 = 32비트 --> CPU와 기억장치 간의 데이터 전송은 한 번에 32비트씩 가능
  • 접속경로 : CPU - 시스템버스 - I/O 장치 제어기 - I/O 장치

CPU와 보조기억장치/IO장치 간의 정보전달 차이점 - 데이터 전송단위

  • 키보드 : 바이트 단위 전송
  • 보조기억장치 : 블록단위 전송

※ 분주대기(busy wating) : 상태 레지스터의 InRDY 비트가 1로 세팅될 때까지 대기 → 방지법 : 인터럽트

연습문제

  1. 용어들의 의미설명
    (1) 기계어 프로그램 : 기계코드, 컴퓨터 하드웨어 부품들이 이해할 수 있는 언어
    (2) 어셈블리 명령어 : 기계어와 고급언어 사이의 중간언어
    (3) 니모닉스 : 연상언어 ADD, STOR
    (4) 단어 : 각 기억장소에 저장되는 정보의 기본 단위, CPU에 의해 한 번에 처리될 수 있는 비트들의 그룹

  2. 16비트 명령어에서 6비트는 연산코드, 나머지는 오퍼랜드다
    (1) CPU가 수행할 수 있는 연산의 종류? 2에 6승 = 64개
    (2) 이 명령어에 의해 직접 주소지정 될 수 있는 기억장치의 용량? 2에 10승 1024비트

  3. CPU와 기억장치간에 접속된 데이터 버스는 32비트, 주소 버스는 12비트라고 가정한다
    (1) 기억장치로부터 한 번에 읽어올 수 있는 데이터는 몇 바이트? 32비트 = 4바이트
    (2) 기억장치의 주소가 바이트 단위로 지정된다면, 최대 기억장치 용량은 몇 바이트? 2에 12승 = 4096비트 = 512바이트

  4. 데이터버스가 32비트이며, 기억장치의 용량이 64K바이트라면 시스템 버스는 모두 몇 비트?
    → 데이터버스 32비트 + 주소버스 16비트 = 48비트


'컴퓨터 구조' 카테고리의 다른 글

RAID의 구성 및 특성  (0) 2017.12.21
기억장치 시스템의 특성/구조  (0) 2017.12.21
제어 유니트의 구조와 기능  (0) 2017.12.21
CPU의 구조와 기능  (0) 2017.09.19