10진수
0, 1, 2, 3, 4, 5, 6, 7, 8, 9 까지 표현, 9 다음으로는 자릿수를 올려 쓴다. (10진법)
2진수
0, 1로 표현, 1 다음으로는 자릿수를 올려 쓴다. (2진법)
ex) 0, 1, 10, 11, 100, 101, 110, 111, 1000 ... ...
10진법으로 표현 시, '0, 1, 2, 3, 4, 5, 6, 7, 8 ... ...'과 대응된다.
2의 n제곱마다 뒤에 공이 n개씩 늘어난다.
ex) 2의 0제곱 = 1 >> 1
2의 1제곱 = 2 >> 10
2의 2제곱 = 4 >> 100
2의 3제곱 = 8 >> 1000 ... ...
0과 2를 제외한, 2의 배수(짝수)일 경우 뒷 숫자는 반드시 0이다.
ex) 2 * 2 = 4 >> 100
2 * 3 = 6 >> 110
2 * 4 = 8 >>1000
2 * 5 = 10 >> 1010 ... ...
그럼 110110을 10진수로 표현하면 몇인가?
100000 + 10000 + 100 + 10
== 2^5 + 2^4 + 2^2 + 2*1 = 32 + 16 + 4 + 2 = '54' 가 된다.
16진수
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f로 표현, f 다음으로는 자릿수를 올려 쓴다. (16진법)
ex) 19, 1a, 1b, 1c, 1d, 1e, 1f ... ...
10진법으로 표현 시, '25, 26, 27, 28, 29, 30, 31 ... ...'과 대응된다.
16의 n제곱마다 뒤에 공이 n개씩 늘어난다.
ex) 16의 0제곱 = 1 >> 1
16의 1제곱 = 16 >> 10
16의 2제곱 = 256 >> 100
16의 3제곱 = 4096 >> 1000 ... ...
16진수에서 십의 자리, 또는 그 이상의 수가 n일때, 10진수로 바꾸면 16n이 된다.
ex) e0 = 16*14
f0 = 16*15
100 = 16*16
110 = 16*16 + 16*1
그럼 1ff를 10진수로 표현하면 몇인가?
(16^2)*1 + (16^1)*15 + (16^0)*15
== 256 + 240 + 15 = '511' 이 된다.
아직은 많이 미숙해서 틀린 점 있을 수 있습니다.
오타, 지적 환영합니다.
'Learn & Develop > C' 카테고리의 다른 글
C언어 - 상수의 종류와 자료형의 변환 (0) | 2021.09.03 |
---|---|
C언어 - 기본 자료형의 종류와 수의 표현방식 (0) | 2021.09.03 |
C언어 - 연산자(2) (0) | 2021.09.03 |
C언어 - 연산자(1) (0) | 2021.09.02 |
C언어 - 다차원 배열(1차원 배열, 2차원 배열, 3차원 배열) (0) | 2019.12.01 |