2016-12-12 5 views
0

-~xx+1~-xx-1に等しいことを確認して(コンピューターで)確認しましたので、私はそれを書き留めて何が起こっているのかを見てみましたが、何か間違っています。〜〜xと〜-xはどのように動作しますか?

のは、x=4

ルール ~-x === x-1

に従ってだが-~xのために、私は同じを取得している

0100 // 4 in binary, leading 0 for the sign 
1100 // the inverse of the addition 
0011 // ~ complement 

0011=3てみましょう:

私は間違って行くん
0100 // 4 in binary 
1011 // ~ complement 
0011 // the inverse 

を?私は愚かですか?

答えて

0

OK問題はマイナスの数字の表現でした。私はTwo's complement操作を使用しなければならないし、正しい結果を返します。だから、-~xは次のように動作します:

0100 // 4 (we assume a 4 bit number without taking sign into account) 
1011 // complement which is 11 

そして今、2の補数を使用して:

Nビット数の2の補数を2Nに関して補足 として定義されます。言い換えれば、2Nからの数字を 引き算した結果です。

この場合N=42^N = 16で、最終的に我々はx+1である5を取得する16から11を引くとき。我々はそれを示した0​​

関連する問題