1. 2진수와 16진수
디지털 데이터는 기본적으로 0과 1의 조합인 2진수로 이루어진다. 이 2진수로 산술 계산도 하고, 그림도 저장하고, 음악도 저장하며 프로그램도 실행한다. 그러나 데이터 규모가 커지면 2진수로만 표현하여 데이터를 다루기가 어려워진다. 0과 1 의 숫자만 무수히 많아지기 때문에 가독성이 현저히 떨어진다. 그래서 사용 하는게 16진수이다. 2진수 4자리마다 16진수 한자리로 변환하는 방식으로 사용한다. 16진수는 10진수에서 사용하는 숫자 10(0~9)개에 영문 알파벳 ‘A’부터 ‘F’까지 6개를 더해서 사용한다. 그리고 16진수를 표현할 때에는 앞에 0x를 붙여서 10진수와 구분해 준다. 이는 프로그래밍 언어 C 에서 쓰이기 시작한 방식이지만 보편적으로 많이 쓰이는 방식이기도 하다.
16진수 구성요소
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
2진수 : 16진수
0000 : 0x0
0001 : 0x1
~
1110 : 0xE
1111 : 0xF
10진수 : 16진수
0 : 0x00
1 : 0x01
~
15 : 0x0F
16 : 0x10
2. 데이터 크기에 따른 단위
디지털에서는 데이터의 크기에 따라 불려지는 단위가 다르다.
Bit(비트)
디지털 데이터 최소 단위로 2진수 0과 1, 둘중 하나만을 표현할 수 있는 크기을 말한다. 다음은 8개의 비트로 표시된 2진수이다. 16진수로 변환하면 0x65가 된다.
bit
V
1 0 1 0 - 0 1 0 1 => 0x65
Byte (바이트)
비트 8개를 모아서 2의 8승(256)종류의 숫자를 표현할 수있는 크기의 단위이다.
(8bit = 1Byte)
0000 0000 => 0x00
0000 0001 => 0x01
0000 0010 => 0x02
~
1111 1110 => 0xFE
1111 1111 => 0xFF (10진수 : 255)
KByte(킬로바이트)
1024개의 바이트를 1KByte 라고 한다.
왜 1024인가
일반적으로 쓰이는 미터법(10진수)에서처럼 1000단위로 분류하지 않고 1024단위로 나누는 이유는 디지털(2진수)의 특성 때문이다. 10진수에서 킬로(K)는 10의 3승이지만 2진 수에서 좌승을 곱해서는 딱 1000 이 나오게 만들수가 없다. 그래서 2의 10승을 곱해서 나오는 수 1024가 가장 1000에 근접한 숫자라 1024 배수를 기준으로 단위로 나뉘게 된다. 이 후 단위들은 모두 1024배씩 곱하게 될 경우 단위는 다음과 같이 된다.
그 외
MByte (메가바이트) = 1024KBytes
GByte(기가바이트) = 1024MBytes
TByte(테라바이트) = 1024GBytes
이후로는 페타바이트, 엑사바이트, 제타바이트, 요타바이트 등이 있다.
그렇다면 1GBytes는 몇 Bytes일까요?
1024(M) x 1024(K) x 1024(byte) = 1,073,741,824 bytes
'개발이야기 > 이론' 카테고리의 다른 글
[컴퓨팅개론-003] 디지털이란 (0) | 2022.04.02 |
---|---|
[컴퓨팅개론-002] 중앙처리장치(CPU) (0) | 2022.03.26 |
[컴퓨팅개론-001] 컴퓨터의 기본 구성 요소 (0) | 2022.03.12 |
[컴퓨팅 개론] 시작하며... (0) | 2022.02.18 |