테키테크 TEKITECH

[컴퓨터구조] Ch02. 0과 1, 데이터를 표현하는 방법 본문

그리고/스터디

[컴퓨터구조] Ch02. 0과 1, 데이터를 표현하는 방법

TEKI 2023. 2. 5. 07:50

우리가 알아야 할 컴퓨터 구조 지식 두 가지

  1. 컴퓨터가 이해하는 정보의 단위
  2. 이진법, 십진법, 십육진법
  3. 컴퓨터의 네 가지 핵심 부품: CPU, 메모리, 보조기억장치, 입출력장치

 


 

1.  컴퓨터가 이해하는 정보의 단위

컴퓨터의 언어, 0과 1
컴퓨터가 이해하는 가장 작은 정보 단위는 0 또는 1을 나타내는 정보이며, 이를 비트(bit)라고 한다.

 

◈  정보의 크기에 따라 표현 가능한 정보의 종류는 달라진다.
→ N비트 정보는 2N가지 정보를 표현할 수 있다.

  • 1비트 : (0) or (1)
  • 2비트 : (0, 0) or (0, 1) or (1, 0) or (1, 1)
  • 3비트 : (0, 0, 0) or (0, 0, 1) or (0, 1, 0) or (0, 1, 1) or (1, 0, 0) or (1, 0, 1) or (1, 1, 0) or (1, 1, 1)

 

  정보의 크기가 아주 크면 새로운 단위를 사용한다.

 

 

2. 이진법, 십진법, 십육진법

0과 1로 숫자를 표현하는 방법을 이진법이라고 하며, 0부터 9까지 총 10개 숫자로 모든 수를 표현하는 방법을 십진법, 그리고 0부터 9까지에 A부터 F까지를 포함해 총 16개 숫자와 문자로 숫자를 표현하는 방법을 십육진법이라고 한다.

→  이진수숫자 뒤에 아래첨자(2)를 붙이거나 숫자 앞에 0b를 붙여 구분한다. (주로 전자는 수학적 표현으로, 후자는 코드상에서 사용함)
→  십육진수숫자 뒤에 아래첨자(16)를 붙이거나 숫자 앞에 0x를 붙여 구분한다. (주로 전자는 수학적 표현으로, 후자는 코드상에서 사용함)

 

  1의 보수, 2의 보수, 부호 절댓값

-1을 이진수로 표현한다면? 컴퓨터는 0과 1만 이해하므로 -1을 이해할 수 없다.
따라서 음수인 이진수를 표현하는 여러가지 방법이 있다. (출처&더 자세한 설명)

1의 보수 표현법 (One's Complement)
보수
는 '보충해주는 수'라는 뜻으로, 여기에서는 '어떤 수를 만들기 위해 필요한 수'라는 의미로 사용된다.
다시 말하면 'N의 보수'는 '어떤 수에 대해 N의 제곱수가 되도록 만드는 수'이다.
예를 들어, 10진법에서 3에 대한 10의 보수는 '3에서 10을 만들기 위해 필요한 수'라는 의미, 즉 7을 말한다.

모든 N진법에는 ①N의 보수 표현법과 ②N-1의 보수 표현법 두 가지가 쓰인다.
N진법에서의 N-1의 보수는 (N의 보수 - 1)이 된다.
예를 들어, 10진법에서 9의 보수10의 보수 - 1이다. 즉 17에 대한 10의 보수는 83이므로, 17에 대한 9의 보수는 83 - 1인 82가 된다.

 2의 보수 표현법 (Two's Complement)
음수인 이진수를 표현하는 방법 중 가장 널리 사용되는 방법으로, 2의 보수를 구해 이 값을 음수로 간주하는 방법이다.

 부호 절대값 (Sign-Magnitube)
최상위 비트(가장 왼쪽의 비트)를 이용해 부호를 표시하는 방법.
즉, 비트가 0일 때는 양수, 1일 때는 음수라고 약속하여 양수와 음수를 구별하는 방법.
이 때, 최상위 비트를 MSB(Most Significant Bit)라고 함.

[양수]   5(2) = 0000 0000 0000 0000 0000 0000 0000 0101(2)
[음수] -5(2) = 1000 0000 0000 0000 0000 0000 0000 0101(2)

이렇게 표현할 경우, 컴퓨터 입장에서는 연산하기 위해 고려해야 하는 정보가 많다는 단점이 있다.

 

 

3. 컴퓨터의 네 가지 핵심 부품: CPU, 메모리, 보조기억장치, 입출력장치

[1] 주기억장치 (Main Memory)

: 현재 실행되는 프로그램의 데이터와 명령어를 저장하는 부품.
가격이 비싸 저장 용량이 작고, 전원이 꺼지면 저장된 내용을 잃어버린다는 단점이 있다.

  1. 프로그램이 실행되려면 반드시 메모리에 저장되어 있어야 한다.
  2. 데이터와 명령어는 '주소'라는 개념을 사용해 메모리에 저장된 값에 빠르고 효율적으로 접근한다.

주기억장치(메인메모리)에는 크게 RAM(Random Access Memory) ROM(Read Only Memory)가 존재
*이 책에서 언급하는 '주기억장치' 또는 '메모리'는 RAM을 의미

 

[2] 중앙처리장치 (CPU: Central Processing Unit)

: 컴퓨터의 두뇌로, 메모리에 저장된 명령어를 읽어 들이고, 해석하고, 실행하는 부품.

CPU 내부 구성 요소 중 가장 중요한 세 가지

① 산술논리연산장치 (ALU: Arithmetic Logic Unit)
: 계산을 도맡아 수행하는 부품

② 레지스터 (Register)
: 프로그램을 실행하는데 필요한 값들을 임시로 저장하는 장치로, 하나의 CPU에 각기 다른 이름과 역할을 가진 레지스터가 여럿 존재

③ 제어장치 (CU: Control Unit)
:제어 신호(Control Signal)를 내보내고 명령어를 해석하는 장치

 

[3] 보조기억장치 (Secondary Storage)

: 메인메모리의 단점을 보완하는 저장 용량이 크고, 전원이 꺼져도 내용을 잃지 않는 보조 메모리
예) 하드 디스크, SSD, USB 메모리, DVD, CD-ROM과 같은 저장 장치

"메모리가 현재 실행중인 프로그램을 저장한다면, 보조기억장치는 보관할 프로그램을 저장"

 

[4] 입출력장치 (I/O Device: Input/Output Device)

: 마이크, 스피커, 프린터, 마우스, 키보드처럼 컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환하는 장치

 

[5] 메인보드와 시스템 버스

컴퓨터의 핵심 부품은 모두 메인보드(Main Board) 또는 마더보드(Mother Board)라고 부르는 판에 연결된다.

메인보드에 연결된 부품은 버스(Bus)라는 통로를 통해 서로 정보를 주고받으며, 이 중 핵심 부품이 정보를 주고받는 통로는 시스템 버스(System Bus)라고 한다.

시스템 버스는 아래와 같이 세 가지 버스로 구성되어 있다.

  • 주소 버스(Address Bus): 주소를 주고받는 통로
  • 데이터 버스(Data Bus): 명령어와 데이터를 주고받는 통로
  • 제어 버스(Control Bus): 제어 신호를 주고받는 통로

 

반응형
Comments