banner
指数爆炸

指数爆炸

我做了对饭 !
github
bilibili

真正にあなたに補数とは何かを教えましょうか?

========================================

バイナリ補数とは何ですか?#

バイナリ補数は、負数を表すために正数を使用する方法です。

========================================

#

  1. 例えば、-1 を 8 ビットのバイナリ数で表す場合、1(00000001)の補数を求めるだけです。00000001 の各桁の 0 を反転させて 1 にし、1 を反転させて 0 にし、そして反転した結果に 1 を加えます。最終的に - 1(11111111)に変換されます。

  1. もう一つの例として、-5 を表す場合、5 のバイナリ数は 0101 です。0101 を反転させて 1 を加えると、1011(-5)に変換されます。

=======================================

  • 実際には、先生が教えてくれた概念について心配する必要はありません:
    正数の元の値と反転補数は同じですが、負数の元の値と反転補数は計算する必要があります。
    それに、コンピュータには元の値ではなく補数が格納されています。

実際には、コンピュータにはこのような数字が格納されているだけで、負数を表すために補数が使用されているだけです。

=======================================

では、なぜ負数を表すために補数を使用するのですか?#

すべての 10 進数の計算は、コンピュータ内で 2 進数の計算として行われます。すべての減算は、コンピュータ内で加算として行われます。補数を使用しない場合、1-1 は - 2 になります。例えば
0001-------------(1)
1001-------------(-1)
0001+1001=
1010-------------(-2)
そのため、私たちは負数を表すために補数を使用する必要があります
0001-------------(1)
1111-------------(-1)
0001+1111=
10000------0000-------(0)

=======================================

なぜバイナリ補数と呼ばれるのですか?#

おそらく、ある数とその補数を加えると 0 になるからです。実際に考えてみれば、-5 を表すときは 5 を使用して表しているので、-5 と 5 は本来互いに反対の数です。

=======================================

小さなヒント:#

数とその補数は互いに反対の数であるため、補数 ---> 反転 + 1---> 元の数に変換されます。
-5(1011)------ 反転 + 1-------5(0101)

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。