10진수를 n진수로 나누려면 해당 진수로 나누고 나머지 값을 앞에 적는 것을 더 이상 나눌 수 없을 때까지 반복한 다음 마지막 몫과 나머지를 아래부터 위로 순서대로 적으면 된다.

 

 

2 46 나머지
2 23 0
2 11 1
2 5 1
  2 1
  1 0

46(10진수) > 101110(2진수)

이런식으로 변환이 가능하다.

 

 

한 자리의 2진수를 '비트(bit, binary digit)라고 하며, 1비트는 컴퓨터가 값을 저장할 수 있는 최소 단위이다.

보통 비트 8개를 묶어서 바이트(byte)라는 단위로 정의해서 데이터의 기본 단위로 사용한다.

이 외에도 워드(word)라는 단위가 있는데, 워드(word)는 CPU가 한 번에 처리할 수 있는 데이터의 크기를 의미한다.

 

n비트로 표현할 수 있는 10진수

값의 개수 : 2ⁿ

값의 범위 : 0~2ⁿ-1

10진법은 일상생활에서 일반적으로 쓰는 숫자이며, 2진법은 컴퓨터가 쓰는 숫자이다.

사람은 10개의 손가락을 가지고 있고, 컴퓨터는 켜짐 꺼짐 두 가지 상태를 가지고 있다.

 

int age = 25; // 변수 age에 25를 저장

 

25(10진수) > 11001(2진수)

 

2진법은 0과 1로만 데이터를 표현하기 때문에 10진법에 비해 많은 자릿수를 필요로 한다.

2진수 10진수
0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7
1000 8

 

'JAVA 02강 변수(Variable) > 진법' 카테고리의 다른 글

음수의 2진 표현 - 2의 보수법  (0) 2021.07.11
실수의 진법변환  (0) 2021.07.11
정수의 진법 변환  (0) 2021.07.11
8진법과 16진법(octal base hexadecimal)  (0) 2021.07.11
비트(bit)와 바이트(byte)  (0) 2021.07.11

+ Recent posts