개요
본문에서는 컴퓨터가 정수를 표현하는 방식에 대해서만 다룬다.
0보다 작은 정수 표현하기
sign-magnitude
첫번째 bit를 부호를 지정하는sign bit로 사용하는 방식이다.
- sign bit 0: 양수 010101012 = +8510
- sign bit 1: 음수 110101012 = -8510
장점과 단점이 존재한다.
2의 보수법
2의 보수법(Two's Complement)이란 각각의 bit를 다음의 방식으로 해석하는 표현법이다.
[math]\displaystyle{ x_{w-1}\cdot(-2^{w-1})+\sum_{n=0}^{w-2}{x_i\cdot2^i} }[/math]
이때 2의 보수법을 적용하는 2진수에서의 first bit를 MSB(Most Significant Bit)라고 한다. MSB가 1이면 음수, 0이면 0이상의 정수이다. 아래는 2의 보수법을 적용하여 해석한 2진수이다.
- 0b01010 = 0 + 8 + 2 + 0 = 10
- 0b10110 = -16 + 0 + 4 + 2 + 0 = -10
Unsigned vs Signed
2의 보수법을 적용하여 동일한 2진 벡터를 다른 방식으로 해석할 수 있다.