[컴퓨터구조] 2-2 Signed/Unsigned numbers

strn18·2024년 1월 23일

컴퓨터구조

목록 보기
3/4

Unsigned binary integers

다음 n-bit unsigned number가 있다고 하자.

101121011_2

이 number는 10진수로 얼마일까?
=> 231+220+211+201=11102^3*1 + 2^2*0 + 2^1*1 + 2^0*1 = 11_{10}

이처럼 unsigned 방식으로 2진수를 표현하면, n번째 자리(LSB를 0번째로 보았을 때)의 값은 2n2^n이다.

그렇기에, 32비트를 사용할 경우 00부터 23212^{32}-1 = 4,294,967,2954,294,967,295(대충 42억)까지 표현 가능하다.

2's compliment signed integers

2의 보수 방식을 사용한다면? MSB는 음수의 값을 가진다. 즉 n개의 비트를 사용할 때, MSB인 n-1번째 자리의 값은 2n1-2^{n-1}이 된다. 그러므로 위의 101121011_2는 10진수로 -8 + 0 + 2 + 1 = 510-5_{10}가 된다.

0개의 댓글