-3

この問題の解き方を教えてください

8 ビットの符号付き絶対値、1 の補数、および 2 の補数を使用して、次の 10 進数を 2 進数で表します。

  1. 88
  2. -76

私の解決策は次のとおりです。

 88 = 01011000 8 bit sm
      10100111 1s complement
      10101000 2s complement

-76 = Not sure about this one
4

2 に答える 2

0

このリンクは、問題の解決に役立つはずです。非常に短くて簡単です: http://www.cs.uwm.edu/classes/cs315/Bacon/Lecture/HTML/ch04s11.html

8 ビット符号付きマグニチュードの簡単な説明:

希望する形式の数値は次のようになります:
1000 0110、これは 10 進数で -6 に等しい:
1*** **** - 数値に符号 (マイナス) があることを意味し、
*000 0110 - のバイナリ表現を含む番号。

正の数がある場合は、単純にバイナリ形式に変換します:
(D) 7 = 0000 0111 (D) 20 = 0001 0100

負の数 (-7 など) がある場合、最上位ビットは 1:1 に等しくなります。

値は単純にバイナリ形式に変換されます:
(D) 7 = 111 = 000 0111

次に、それを結合します:
(D) -7 = 1000 0111.

この形式では、-127 から 127 の範囲の数値しか保存できないことに注意してください。値には下位 7 ビットしか残っていませんが、符号には 8 番目のビットを残す必要があります。

1 の補足例:

(D) -7 = 1000 0111 8 ビット符号付き。1 の補数である 1111 1111
1000 0111 - あなたの番号
0111 1000 + - 1 の補数
^^^^^^^^^
1111 1111

正式には、次の操作を実行できます:
1111 1111
1000 0111 - - あなたの番号
^^^^^^^^^
... <- あなたの番号の 1 の補数

2 秒補完:

1 の補数を計算したら、それに 1 を足すだけです: 1000 0111 - あなたの番号
0111 1000 - あなたの番号の 1 の補数
0111 1001 - あなたの番号の 2 の補数

これを自分でやってみて、あなたの答えを投稿してください。そうすれば、もっと多くのことが学べます。

于 2015-04-25T16:57:50.570 に答える