프로그래밍에서 16진수를 사용하는 이유

mauz·2022년 6월 22일
1

진법 변환 문제를 풀다가 작성하는글..

https://www.boostcourse.org/cs112/lecture/119027?isDesc=false
언제나 맛있는 CS50 강의

현대 컴퓨터는 0과 1의 2진수으로 동작한다.

최초의 컴퓨터라고 불리는 에니악은 10진법으로 작동했다고 한다.
그 이유는 사람 손가락이 열개라서.. 라는 말이 있는데

인간이 10진법을 사용하기 때문에 그대로 에니악에 들여온듯하다.

그러나 10진법으로는 전기회로의 전압을 관리하기 어려웠다.
그래서 개선된 모델에서는 전기회로의 닫힘과 열림을 0과 1로 표현하는 2진법으로 작동방식이 바뀌었다.


컴퓨터가 2진수로 표현하려는 숫자가 커지면 어떻게 될까?

백을 나타내면 1100100
천을 나타내면 1111101000
만을 나타내면 10011100010000

32비트에서 나타낼 수 있는 가장 큰 숫자 (4,294,967,296 - 1)를 2진수로 나타내려면?

1111 1111 1111 1111 1111 1111 1111 1111

32자리가 필요하다

숫자가 커질수록 2진수가 계속해서 늘어날 것이고
그에 따라 메모리 부담이 증가할 것이다.

그러나 2진수를 16진수를 나타내는 방법을 사용하면
2진수 1111 를 f 로 표현할 수 있다.

컴퓨터는 8개의 비트가 모인 바이트 단위로 정보를 표현한다.
2개의 16진수는 1byte의 2진수로 변환되기 때문에 정보를 표현하기 매우 유용한 이유 때문에 16진수를 사용하고있다.

메모리 관리 방면에서 16진수를 사용함으로써 얻는 이점

profile
쥐구멍에 볕드는 날

0개의 댓글