10진수 ↔ 2진수


10진수 → 2진수

image.png

  1. 변환하고 싶은 숫자 N을 2로 몫이 0이 될 때까지 나눈다.
  2. 역순으로 나머지를 읽는다.

2진수 → 10진수

image.png

  1. 자리값 파악
  2. 1인 비트 자리수의 2의 거듭제곱 값을 더한다.

2진수를 음수로


N비트 표현

음수를 2진수로 표현하는 방법에는 3가지가 있다. 먼저 컴퓨터는 N bit로 숫자를 표시할 때 평소 2진수를 표현하는 것과는 다르다는 것을 인지한다. 10010011 에서 평소 같으면 145이지만 제일 앞비트는 +/- 표현을 위해 남겨두거나 컴퓨터만의 표기법을 위해 곧이 곧대로 변형시키지 않는다.

부호 절대값 방식

맨 앞 비트에서 음수는 1, 양수는 0으로 고정한다. 음수인 경우 양수 부분만 2진수로 변환해 앞에 1을 붙인다.

-10  -->  10  -->  00001010  --> (음수이기 때문에 맨 앞에 1을 붙인다.)  -->  10001010

하지만, 여기서 0의 경우 +0, -0 모두 다른 값을 가지는 문제가 생긴다. 사실 0은 부호가 없는 수인대도 말이다.

+0  -->  00000000, -0  -->  10000000