【IT基礎理論】補数表現について
こんにちは。行未です。
補数表現についての備忘録。イッツ走り書き。
補数について
そもそも補数ってなんぞ?ってことですね。
補数とは、「ある数について、足すと桁上がりが発生する数のうち『最小』のもの」です。
例えば、我々の扱う2桁の世界でいうとこんな感じです。
・65の補数⇒35
・82の補数⇒18
それぞれ足すと100になります。
補数のメリット
各所で言われていますが、「減算」を「加算」で表せることに尽きます。
つまりは、減算が使えない世界で効果を発揮します。
以下の式で考えてみます。先程と同様、2桁の世界で考えてみます。
88-24=64
問題が発生します。「-24」がネックです。「-」も1桁と考えます。
ここで、10の補数の考えを使います。
今回は2桁の計算ですので、(2+1)桁の最上位桁が1、すなわち「100」があると仮定します。
あくまでも3桁目は仮定です。
24の補数は76です。
では、以下のように式を変形してみましょう。
88-24=64 ⇒ 88+76=164
先ほど、3桁目を仮定しましたが、変形後の右辺の3桁目の1を無視すると、64となり、変形前と一致します。
先ほどの例は、「2桁でしか表現できない」という世界で考えました。
正の数のみであれば、2桁で表現できる数は0~99の100種類です。
では、負の数は?通常であれば-を付けます。-をつけてみましょう。
-1~-9の10種類しか表現できません。よろしくないです。
先ほどの式の例でいえば、「-24」が出来ません。
コンピュータの計算はビット計算で成り立っていますので、減算を加算で表現できるのは大きなメリットとなります。
参考サイト様
http://proengineer.internous.co.jp/content/columnfeature/6254
ディスカッション
コメント一覧
まだ、コメントがありません