「2の補数」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
4行目: 4行目:


頭の部分の1個以上の0を含む(正規化されていない)ある桁数の二進法で表現された数があるとき、その最上位ビット (MSB) よりひとつ上のビットが1で、残りが全て0であるような値(8ビットの整数であれば、100000000<sub>(二進)</sub> = 256)から、元の数を引いた数が'''2の補数'''である。MSBの重みが1であるような固定小数点表現の場合は特に「2」の補数となる。
頭の部分の1個以上の0を含む(正規化されていない)ある桁数の二進法で表現された数があるとき、その最上位ビット (MSB) よりひとつ上のビットが1で、残りが全て0であるような値(8ビットの整数であれば、100000000<sub>(二進)</sub> = 256)から、元の数を引いた数が'''2の補数'''である。MSBの重みが1であるような固定小数点表現の場合は特に「2」の補数となる。

== 1の補数 ==
二進法における、減基数すなわち 2<sup>n</sup> − 1 による補数を'''1の補数'''と言う。1の補数は、全ての桁が1である値から、元の値を引けば求まるが、各ビットの1を0に、0を1に、と反転させても求められる。
00100100(元の数)
11011011(1の補数)
11011100(2の補数)


== 十進法との対応 ==
== 十進法との対応 ==

2015年12月18日 (金) 00:53時点における版

2の補数(にのほすう)は、2、ないし2のべき乗の補数、またそれによる負の値の表現法である。特に二進法で使われる。(数学的あるいは理論的には、三進法における減基数による補数、すなわち 3n − 1 = 2222....2222(三進) による補数も「2の補数」であるが、まず使われることはない)

コンピュータの固定長整数型や、固定小数点数で、負の値を表現するためや加算器で減算をするために使われる。

頭の部分の1個以上の0を含む(正規化されていない)ある桁数の二進法で表現された数があるとき、その最上位ビット (MSB) よりひとつ上のビットが1で、残りが全て0であるような値(8ビットの整数であれば、100000000(二進) = 256)から、元の数を引いた数が2の補数である。MSBの重みが1であるような固定小数点表現の場合は特に「2」の補数となる。

十進法との対応

十進表記 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

関連項目