0

私はコンピュータサイエンスを勉強していますが、自分で何かを理解することはできません。

この数があります:-23310ビット表現を使用

私がする必要があるのは、数字を過剰な表記で表すことです(2^n-1)

だから、私は思いついた:

1 base 10 = 0000000001

2^10-1 = 1000000000

私の表記では1基10=1000000001

だから、私の-256は0000000001です

そして私の255は1111111110です

この表記に続く-233番号は何ですか?

本の結果は0 1 0 0 0 1 0 1 1 1

私の結果:0 0 0 0 0 1 0 1 1 1

皆さんが私を助けてくれることを願っています。

4

1 に答える 1

1

あなたは正しい道を進んでいたと思いますが、ちょっとした間違いをしました。

表記がよくわからなかったので、まずは見てみました。Kは通常2^(n-1)= 2 ^ 9 = 512として選択されているようです。つまり00 0000 0000、=-512および11 1111 1111=511です。-256を取得する方法がわかりません。エラーがある可能性があります。

ここで、-512(00 0000 0000)から-233まで、279()の違いがあり01 0001 0111ます。これはあなたの例の結果のようです。

構築を容易にするために、これを行うことができます(K = 2 ^(n-1)と仮定)-例番号-12:

  • 正の値(12)のバイナリ表現を使用します。00 0000 1100
  • Kを追加(2 ^(n-1)):10 0000 1100
  • すべてのビットを反転します。01 1111 0011
  • 1を追加します(値がゼロであるため):01 1111 0100
于 2012-06-05T13:25:08.487 に答える