C
[C 기초] 진수, 아스키코드
ruming
2021. 2. 26. 22:00
2진수
binary
- 0과 1로만 나타내는 수
- 4자리 또는 8자리로 표현한다. (자릿수가 모자라면 상위를 0으로 채움)
c언어에서 2진수로 출력하기 위해 10진수를 2로 나누는 것을 반복해 그 나머지를 역순으로 출력했던 기억이 있다.
10진수와 2진수를 비교해보자면
10진수 | 2진수 |
0 | 00000000 |
1 | 00000001 |
2 | 00000010 |
3 | 00000011 |
4 | 00000101 |
이런식으로 바꿀 수 있다.
8진수
octal
- 0부터 7까지 표현 가능
- c언어에서는 8진수를 구별할 때 앞에 0을 붙인다고 한다. (01234 -> 668)
- c언어에서는 %o로 출력가능 (%#o로 출력하면 접두사 0이 표시된다)
16진수
Hexadecimal
- 0부터 15까지 표현 가능, 10부터는 A~F로 표현 (15 = F)
- c언어에서 출력하려면 %x를 쓴다. (%#x를 쓰면 0x이 표시된다.)
아스키코드
- 7비트 문자 인코딩
c언어에서 자주 쓰인다. char형에 저장하고 출력할 수 있다.
A는 65이므로 %d로 출력하면 65, %c로 출력하면 A가 나온다. (char형에 65로 저장하든, 'A'로 저장하든)