03. 데이터 표현 - 2진수, 8진수, 10진수, 16진수
코드(code): 컴퓨터의 처리형식에 맞도록 부호화된 프로그램 명령이나 데이터
비트(BInary digiT, BIT): 2진수 체계에서 데이터의 기본 단위로 0과 1을 사용
2진수(binary)
8진수(octal)
10진수(decimal)
16진수(hexadecimal, H)
2진수 변환기법은 아래 숫자만 기억하면 된다.
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
|
|
|
|
|
|
|
|
예를 들어 10진수: 56을 2진수로 바꾼다고 하자.
56 - 32 = 24
24 - 16 = 8
8 - 8 = 0
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 |
56을 2진수로 변환한 값은 111000이 된다.
이제 2진수를 8진수로 변환한다.
2진수의 맨 앞 두자리를 묶어 아래처럼 계산한다.
맨 앞 두자리를 뺀 3자리를 묶어 아래처럼 계산한다.
맨 뒷자리 3자리를 묶어 아래처럼 계산한다.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 |
0 | 7 | 0 |
56의 8진수는 70이 된다.
다음은 2진수를 16진수로 변환하는 방법에 대해 알아보자.
2진수의 8개를 2 그룹으로 분할해서 묶는다.
첫번째 그룹 계산
두번째 그룹 계산
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 |
3 | 8 |
참고로 16진수는 9를 초과하면
아래 표처럼 문자로 바뀐다.
16진수 | 10진수 |
A |
10 |
B |
11 |
C |
12 |
D |
13 |
E |
14 |
F |
15 |
이건 참고로 알아두세요.
언어 |
표시 방법 |
예 |
어셈블리 언어 |
보통 H 를 뒤에 덧붙인다. A~F가 앞에 오면 문자가 아닌 숫자를 구분하기 위해 앞에 0을 추가한다. |
1234H |
C언어 |
0x 를 접두사로 사용한다. |
0x1234 |
XML |
&#x 를 접두사로 사용한다. |
ሴ |
유니코드 |
U+ 를 접두사로 사용한다. |
U+1234 |
HTML |
24비트 RGB 컬러 코드는 16진수 숫자 앞에 # 사용 |
#FF0000 |
연습문제 1) 컴퓨터 용어에서 코드(code)는 무엇을 가리키는 말인가?
연습문제 2) 10진수 129를 2진수로 변환하면?
연습문제 3) 8진수 63를 10진수로 변환하면?
진수 변환기 사이트:
http://www.translatorscafe.com/cafe/EN/units-converter/numbers/2-1/octal-binary/