인프런 커뮤니티 질문&답변

mikkim님의 프로필 이미지
mikkim

작성한 질문수

개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제

ALU와 제어장치

음수 데이터의 표시에 관하여

해결된 질문

작성

·

593

3

플래그가 어차피 개입될 문제라면 그냥 처음부터 보수 개념이 아니라 그냥 해당 숫자에 음수 플래그만 도입되면 되는게 아닌가요?

1010(2)의 음수 값을 괜히 0110(2)로 하지말고 똑같이 1010(2)로 하고 음수 플래그만 사용해서요..

답변 1

5

강민철님의 프로필 이미지
강민철
지식공유자

음수 플래그를 이용해 음수를 표현하는 것도 방법일 수 있습니다. 다만 2의 보수 표현에 비해 안좋은 점들도 있습니다.

일단 2의 보수 표현에서는 덧셈과 뺄셈 연산이 더 단순해집니다. 음수+양수이든, 양수+양수이든, 음수+음수이든, 양수+음수이든 모든 연산 과정이 같습니다. 하지만 음수 플래그를 사용하는 경우에는 덧셈과 뺄셈에 대한 별도의 로직이 필요해집니다.

그리고 음수 플래그를 사용하는 경우에는 어쩔 수 없이 부호 표현을 위해 하나의 비트를 할애해야 합니다. 다시 말해 표현할 수 잇는 수의 범위가 줄어들 수 있습니다.

 

mikkim님의 프로필 이미지
mikkim

작성한 질문수

질문하기