◆2の補数|詳細|データ復旧をサポートする会社を徹底検証!
2の補数(にのほすう)は、通常は2進法における2の補数のことである。
2進デジタルコンピュータの内部で負の値を表すためによく使われる。 与えられた2進数値(nビット)に対して、そのビット数より1桁多く、最上位ビットが1、残りがすべて0であるような数値(n=8なら 100000000 )から、元の数を引いた数が2の補数である。
目次 |
例
10進数の-36が2進数でどのように表されるかを例にとる。 まず、8ビットで表されている数 00100100(10進数: 36)の補数を求める。
100000000 (8+1=9ビット)
-) 00100100 (8ビット)
-------------
11011100 (計算結果: 8ビット)
(↑最上位ビット(この場合 9ビット目)は、0、1 のいかんにかかわらず無視する。)
したがって、2の補数は 11011100 であり、これが2進コンピュータ内部における -36 の表現である。
元の数(00100100)と求められた(11011100)の2つの数を足し合わせると、すべての桁に 0 が立ち、負数が求められていることがわかる(桁上がりで生じる最上位桁に立つ 1 は無視される)。
別の求め方
「1の補数に1を加える方法」
まず
00100100の各ビットを反転させる(1の補数を求める)と、 11011011。
次に1を加えると、
11011011 +) 1 ------------ 11011100
得られた値は、上記の値と同じことが分かる。
補足
全ての桁に1が立っている状態(11…1: nビット)から、 元の数を引いた後に求められる補数は1の補数と言う。
00100100(元の数) 11011011(1の補数) 11011100(2の補数)
負の整数の見方
コンピュータにおいては、2の補数と符号ビットを使った方法で負の整数を表すことが多い。こうした方法での負の整数の見方を例をあげて説明する。
16ビットの整数型数値を考える。 ここで、左端のビットを符号ビットとし、符号ビットが1なら負数とする。符号ビット以外の部分は、負の整数の場合、絶対値が2の補数で格納されていることとする。
1111 1111 1111 00012は、どういう数値を表しているのだろうか?
- 左端の符号ビットより符号はマイナスとわかる。次に絶対値を求めることを考えればいい。
(-)111 1111 1111 00012
- 絶対値部分は2の補数になっているので、2の補数を求める手順の逆をすればいい。まず、1を引くことにより1の補数にする。
(-)111 1111 1111 00002
- ビット反転し、1の補数を元の数値にする。
(-)000 0000 0000 11112
- これは10進の15。符号をつけて、結局、-15のこととわかる。
十進法との対応
| 十進表記 | 4ビット整数表記 |
|---|---|
| −8 | 1000 |
| −7 | 1001 |
| −6 | 1010 |
| −5 | 1011 |
| −4 | 1100 |
| −3 | 1101 |
| −2 | 1110 |
| −1 | 1111 |
| 0 | 0000 |
| 1 | 0001 |
| 2 | 0010 |
| 3 | 0011 |
| 4 | 0100 |
| 5 | 0101 |
| 6 | 0110 |
| 7 | 0111 |
テクニック
ビットの立っている最下位ビットだけを残して残りを0にする方法
2の補数では、ビットの立っている最下位ビットだけを残して残りのビットを0にするには、C言語で x & -x により、可能である。例えば、14 & -14 は 2 となる。
00001110 14
&) 11110010 -14
------------
00000010 2
Text is available under Creative Commons Attribution-ShareAlike (CC-BY-SA) and/or GNU Free Documentation License (GFDL).
最終更新 2012年4月27日 (金) 09:54 (日時は個人設定で未設定ならばUTC)。
【2の補数】変更履歴
関連ワード
- 2の補数|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- パソコンラック|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- 再インストール|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- CDビデオ|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- ちょいテレ|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- 精度 (算術)|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- 動的幾何学ソフトウエア|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- デジタル・データ・ストレージ|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- Remote Direct Memory Access|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
- コンピュータ用語一覧|詳細 |データ復旧ならデータ復旧比較.jp|データ復旧の会社を徹底検証!
2の補数|詳細:データ復旧の用語集をご覧の皆様へ
パソコンやデジカメなどのデータが消えた!パソコンが急に起動しなくなった!など、急なトラブルであなたの大切なデータが消えてしまったことはございませんか?そんな突然のトラブルからデータ復旧してくれるのが、データ復旧サービスです。データ復旧比較.jpの用語集ではデータ復旧に関する様々なキーワード「例:2の補数」が検索できます。
ご利用上の注意
- 本用語集に掲載される用語は、百科事典「ウィキペディア日本語版」からプログラムにより自動的に抽出・表示されるため、一部ふさわしくない用語が表示される場合があります。
- 当社は、本用語集を通じて提供される情報に関する、有用性、適合性、完全性、正確性、安全性、合法性、最新性等について、いかなる責任も負わないものとします。
- 当社は、お客様が本用語集をご利用されることによって発生した直接・間接の損害に対して、いかなる責任も負わないものとします。

