컴퓨터에서 2진수, 8진수 16진수를 쓰는 이유

Jooni·2021년 1월 8일
0

이유

기본적으로 인간은 10진수를 쓴다. 하지만 컴퓨터는 0,1 두가지 밖에 모른다고 한다. 그래서 2진법을 쓴다고 보면 되는데 심심치않게 8진수와 16진수를 코딩할 때 쓰게된다. 파일 같은걸 다룰 때 그러하다. 왜 8진수와 16진수를 쓸까?
그 이유는 간단하다.
바로 2진수로 수를 표현할 때 너무 길어지기 때문에 이를 줄이기 위해 8진수나 16진수를 사용한다.
예를 한번 보자.

13을 10진수, 2진수, 8진수, 16진수로 표현해 보겠다.

10진수2진수8진수16진수
13110115d

이렇게 표현할 수 있다.

2진수가 8진수와 16진수로 표현할 수 있는 이유는 8진수가 2의 3승, 16진수가 2의 4승 이므로 2진수를 3자릿수, 4자릿수로 나누어 표현할 수 있기 때문인다.

위의 13의 2진수인 1101은 3자리로 분리하면 001, 101 <- 이렇게 두가지로 분리할 수 있다. (1앞에 '00'이 들어간 이유는 8진수로 표현하기 위함임.)

8진수로 표현시

001 -> 8진수의 두번째 자리로 표현 가능 : 1 * 2^0 => "1"
101 -> 8진수의 첫째 자리로 표현 가능 : 1 * 2^2 + 0 * 2^1 + 1 * 2^0 => "5"
즉, 15

16진수로 표현시

1101 -> 16진수의 첫째 자리로 표현 가능 : 1 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0 => "D"
숫자로는 13이지만 16진수를 나열해보면 이것이 D임을 알 수 있다.
16진수 -> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13), E(14), F(15)

미래 유추

만약 파일의 크기가 점점 커지게 된다면 16진수 32진수 64진수의 표현도 쉽게 쓰이는 시대가 올 지도 모를거 같다.

profile
이해가 안돼시거나 질문이 있으신 분들은 댓글로 남겨주세요. 성심성의껏 응하겠습니다!

0개의 댓글