2016-06-14 3 views
0

선생님은 10001의 경우 이진수에 2 개의 의미가 있다고 말했습니다. 하나는 -127에서 127 사이의 숫자이고 -127에서 127 사이의 숫자입니다. 이고 다른 숫자는 0에서 256까지의 부호없는 숫자입니다.부호있는 번호와 부호없는 번호의 해석

숫자가 1000 0001과 같이 이진수 인 경우 계산기에 부호 첨부 수 (-127) 이 이진수가 나타내는 부호없는 번호가 무엇인지 어떻게 알 수 있습니까?

답변

3

부호가있는 부호가없는 번호 은 정확하게 동일한 비트!

계산기에서 16 진수 (0xff)로 표시 할 수 있습니다. 16 진수와 "signed"또는 "unsigned"를 해석할지 여부는 사용자에게 달려 있습니다.

x86 어셈블러에서 CPU 상태 플래그의 "부호 비트"를 확인할 수 있습니다. 이 튜토리얼 밖으로

확인 :

Signed vs Unsigned Numbers

+0

제 질문은 특정 이진수 (예 : 1000 0001)가있는 경우이 번호에 대한 2 개의 인터럽트를 어떻게 알 수 있습니까? – Alona

+1

1) 내가 인용 한 링크를 읽으십시오. 2) "2 진 산술"의 관점에서, * 차이점은 없음을 이해하십시오. 3) 서명 된 것과 서명되지 않은 것 사이에서 정신적으로 변환하는 측면에서 : a) 할당되지 않음 : 비트 (0x81 == 129)를 추가하십시오. b) SIGNED : 상위 비트가 설정된 경우 나머지 비트를 128 (여기서는 128-1 -> -127)으로 줄입니다. – paulsm4

0

서명되지 않은 숫자 이진에서 해석하기 가장 쉬운; 단순히 비트가 나타내는 모든 값을 추가하십시오 (1000 0001 = 129 인 경우 2^7+2^0).

는 서명 된 해석은 하나의 추가 단계 첫번째를 제외하고 거의 동일합니다 선두 자리 1 경우, 당신이 (이 경우 0111 1110에) 모든 비트를 반전하고합니다 (얻을 수있는 결과에 1를 추가 절대 값)이 경우 0111 1111 = 127

올바르게 수행했는지 테스트하려면 동일한 작업을 다시 수행하고 원래 숫자로 끝나야합니다.

관련 문제