전공기초/Computer Architecture

[컴퓨터 구조] 숫자 모음

ardoh 2023. 11. 20. 16:48

Binary numbers

이진수 계산

같은 자리끼리 더해준다. 1+1=2, 즉 이진수로 10이다. 따라서 자리 올림을 해준다.
자리 올림해서 다음 자리로 넘겨주는 걸 carry out, 이전 자리에서 올림 받은 걸 carry in 이라고 부른다.

위의 예시를 보자. 십의 자리에서 1+1를 해서 10이 결과로 나왔다. 0을 먼저 적어주고 1은 자리 올림을 했다. 십의 자리에서 carry out이 발생한 것이다. 이제 백의 자리를 계산하자. 0과 1 뿐만 아니라 이전에 carry out 된 1도 함께 더해주어야 한다. 백의 자리 입장에서 이 1은 carry in 이다.

위 경우 천의 자리가 0+0+1=1로 끝났지만, 만약 1+1+1이라면 어떻게 해야 할까? 11001이 답일까? 아니다. 4bit 계산이기 때문에 결과도 4bit 여야 한다. 이러한 상황을 overflow 라고 한다.

Signed Number

2's complement

가장 왼쪽에 있는 비트가 1이면 음수로 취급한다.
1000 은 이진수로 하면 8 이지만 이를 2's complement로 계산하면 최상위 비트가 1이므로 -8이다.