정의
16진수 : 한자리수에 16가지를 표현 가능 0 ~ F(15)
10진수 : 한 자리수에 10가지를 표현 가능 0 ~ 9
8진수 : 한 자리수에 8가지 표현 가능 0 ~ 7
2진수 : 한 자리수에 2가지를 표현 가능 0 ~ 1
변환
-
10진수 123을 각 진수로 변환
-
10진수 -> 2진수 변환
나는 1,2,4,8,16,32...다 써놓고 해당 숫자보다 작은 자리부터 채워나감
10진수 |
512 |
256 |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
2진수 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
123은 128보다 작으니까 0
123 - 64 = 59 이니까 64는 1로 채움
59 - 32 = 27 이니까 32도 1
27 - 16 = 11 이니까 16도 1
11 - 8 = 3 이니까 8도 1
3 - 4 = -1 음수가 나오니까 4는 0으로
3 - 2 = 1 이니까 2는 1
1 - 1 = 0 여기까지 1은 1
변환 완료
10진수 123 = 2진수로 1111011
-
10진수 -> 8진수로 변환
학교에서 어떻게 배웠더라...기억 안남
일단 10진수를 2진수로 변환함
그리고 2진수를 가지고 8진수로 변환하면 쉽게 됨
8진수 1자리는 2진수 3자리로 표현 가능함
4 |
2 |
1 |
결과 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
2 |
0 |
1 |
1 |
3 |
1 |
0 |
0 |
4 |
1 |
0 |
1 |
5 |
1 |
1 |
0 |
6 |
1 |
1 |
1 |
7 |
8진수는 0 ~ 7 까지 표현 가능하다고 했는데 2진수 3자리면 0 ~ 7 까지 표현 가능함
그래서 2진수로 변환된 숫자를 3자리씩 끊어 1로 채워진 숫자만 더하면 진법 변환 완료
10진수를 2진수로 변환하고
10진수 |
512 |
256 |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
2진수 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
2진수를 다시 8진수로 변환
8진수 |
1 |
4 |
2 |
1 |
4 |
2 |
1 |
4 |
2 |
1 |
2진수 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
결과 |
|
1 |
7 |
3 |
10진수 123 = 8진수 173
-
10진수 -> 16진수로 변환
이것도 학교에서 어떻게 배웠는지 기억 안남
근데 이것도 8진수 변환과 비슷함
8진수의 한자리는 2진수 3자리였지만, 16진수의 한자리는 2진수 4자리로 표현 가능
8 |
4 |
2 |
1 |
결과 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
2 |
0 |
0 |
1 |
1 |
3 |
0 |
1 |
0 |
0 |
4 |
0 |
1 |
0 |
1 |
5 |
0 |
1 |
1 |
0 |
6 |
0 |
1 |
1 |
1 |
7 |
1 |
0 |
0 |
0 |
8 |
1 |
0 |
0 |
1 |
9 |
1 |
0 |
1 |
0 |
A(10) |
1 |
0 |
1 |
1 |
B(11) |
1 |
1 |
0 |
0 |
C(12) |
1 |
1 |
0 |
1 |
D(13) |
1 |
1 |
1 |
0 |
E(14) |
1 |
1 |
1 |
1 |
F(15) |
16진수는 10부터 알파벳 A ~ F까지를 사용함
2진수 변환 내용 생략
2진수를 다시 8진수로 변환
16진수 |
2 |
1 |
8 |
4 |
2 |
1 |
8 |
4 |
2 |
1 |
2진수 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
|
7 |
B |
-
2,8,16진수 -> 10진수로 변환
8진수나 16진수는 2진수로 만듬
1,2,3,4,16,32,64,128,256...
2진수 변환한 것처럼 거꾸로 채워가면 됨