0
このロジックが与える: - VがV <0
if v < 0 then -1,
else +1
sign = +1 | (v >> (sizeof(int) * CHAR_BIT - 1))
>場合を説明= 0、それは、かなり明確だ が、負の整数の場合には、私は修正しています。
のは-1
たとえば(1111 1111)にみましょう: -
仮定: - int
をとる2バイト
CHAR_BIT
(各バイトで表されるビットのno): - 8
SO後
sign = 0000 0001 | 0000 0001
だから私はどのようになるのですか?
CまたはC++ですか?言語タグを追加します。 –
違いがありますか? – prvn
異なる言語ではビット操作のルールが異なるため問題になります。一般的に、質問が明示的に言語に依存しない限り、言語タグは必要です。 –