「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

1の補数

pointこの用語のポイント

point補数だよ

point元の数に足しても桁上がりしない数のうち最大のやつだよ

point2進数の話で出てくるよ

スポンサーリンク

簡単に書くよ

1の補数(読:イチノホスウ 英:one's complement)とは

2進数(各桁が「2」になると桁上がりする数字)における「元の数に足しても桁上がりしませんよ!あっ、その中で一番大きいやつね!」な数(減基数の補数)のこと
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

2進数
補数
基数の補数
減基数の補数


について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

2進数は「各桁が『2』になると桁上がりする数字」です。

1の補数

具体的には

10進数:2進数
0:0
1:1
2:10
3:11
4:100
5:101
6:110
7:111
8:1000
9:1001
10:1010


のような感じです。

補数は「元の数に足すと桁上がりする数のうち、一番小さいもの」です。
例えば10進数「39」の補数は「61」です。
「39」と「61」を足すと「100」になります。
2桁の数に足して3桁になる数(の中で一番小さいもの)ですよね。

1の補数2

あるいは「元の数に足しても桁上がりしない数のうち、一番大きいもの」を指している場合も あります。
10進数の「39」であれば「60」が該当します。
「39」と「60」を足すと「99」です。
ギリギリ2桁のままですよね。

1の補数3

基数の補数は「元の数に足すと桁上がりする数のうち、一番小さいもの」です。

1の補数4

減基数の補数は「元の数に足しても桁上がりしない数のうち、一番大きいもの」です。

1の補数5

単に「補数」と言った場合

1.足すと桁上がりする数のうち、一番小さいもの
2.足しても桁上がりしない数のうち、一番大きいもの


の2つの可能性があります。
これは、ちょっと紛らわしいですよね。

そこで、それぞれに名前を付けて

1.基数の補数:足すと桁上がりする数のうち、一番小さいもの
2.減基数の補数:足しても桁上がりしない数のうち、一番大きいもの


と呼び分けることで、パッと見でも区別できるようにしたのです……多分。

実際のところは知りませんけどね。
多分そんな理由で生まれた呼び名だと思います。

以上を踏まえて

2進数版・減基数の補数

が「1の補数」です。
もう少し噛み砕いて書くと

2進数の話における、元の数に足しても桁上がりしない数のうち、一番大きいもの

です。

1の補数6

あと、ついでなので書いておくと

2進数版・基数の補数

は「2の補数」と言います。
気が向いたら、併せて覚えてあげてください。

1の補数7

例えば、そうですね。

2進数で「101」という数字が あったとしましょう。

1の補数8

「101」は3桁です。

1の補数9

ここで問題です。
2進数の「101」に足してもギリギリ3桁のままになる数は何でしょうか?

1の補数10

答えは「10」です。

1の補数11

「101」に「1」を足すと「110」になります。
3桁です。

1の補数12

「101」に「10」を足すと「111」になります。
3桁です。

1の補数13

「101」に「11」を足すと「1000」になります。
4桁になりました。

1の補数14

3桁の「101」に足してもギリギリ4桁にならない「10」が(「101」の)1の補数です。

1の補数15

ついでなので、もう一問いってみましょう。

2進数の「101」にいくつ足したら4桁になるでしょうか?

1の補数16

答えは「11」以上です。

1の補数17

3桁の「101」に足すと4桁になる数のうち一番小さい「11」が(「101」の)2の補数です。

1の補数18

気が向いたら、セットで覚えてあげてください。

1の補数:2進数において、足しても桁上がりしない数のうち、一番大きいもの
2の補数:2進数において、足すと桁上がりする数のうち、一番小さいもの


です。

以上で1の補数(と2の補数)の大雑把な説明は終わりですが、役に立つか立たないか分からない補足を、ちょっとだけしておきます。
余裕がある方は頑張って読んであげてください。
脳みそから煙が出そうな人は無理する必要ありません。
ゆっくり休んでください。

休め

あっ、読んでくださるのですね。
ありがとうございます。

それでは、いってみましょう。

補数には

基数の補数:足すと桁上がりする数のうち、一番小さいもの
減基数の補数:足しても桁上がりしない数のうち、一番大きいもの


の2種類あります。

1の補数19

2進数においては

基数の補数:2の補数
減基数の補数:1の補数


と表現します。

1の補数20

これが10進数になると

基数の補数:10の補数
減基数の補数:9の補数


と表現したりします。

1の補数21

「9」は「10-1(ジュウ・ヒク・イチ)」ですよね。
ということは10進数の補数は

基数の補数:10の補数
減基数の補数:(10-1)の補数=9の補数


と解釈できます。

1の補数22

実は2進数の場合も同じです。

2進数における

基数の補数:2の補数
減基数の補数:1の補数




基数の補数:2の補数
減基数の補数:(2-1)の補数=1の補数


と解釈できます。

1の補数23

出てくる数字が「1」と「2」なので順番っぽく見えちゃうかもしれませんけどね。
実際には「2-1」と「2」だったりします。

さて、ここまでを踏まえて、ちょっと考えてみてください。
3進数の場合は、どのような表現になりますかね?

3進数の場合は

基数の補数:3の補数
減基数の補数:(3-1)の補数=2の補数


となります。

1の補数24

おやおや「2の補数」という表現が出てきてしまいましたね。

ということで「2の補数」という表現には

1.2進数における基数の補数:2の補数
2.3進数における減基数の補数:(3-1)の補数=2の補数


の2つの可能性があります。
ただし、3進数が出てくる機会があまりないので

2の補数=2進数における基数の補数

と決め打ちで説明されていることが多いのです。

それでは1の補数は、どうでしょうか。

1の補数が基数の補数になるのは1進数の場合です。
1進数の場合は

基数の補数:1の補数
減基数の補数:(1-1)の補数=0の補数


となります。

ただし、1進数も一般的では ありません。
よって

1の補数=2進数における減基数の補数

と決め打ちで説明されていることが多いのです。


image piyo2

一言でまとめるよ

まぁ「1の補数」って単語が出てきたら「2進数(各桁が「2」になると桁上がりする数字)版『元の数に足しても桁上がりしない数のうち一番大きいやつ』なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像005
書籍画像068

おまけ

■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
7日間でハッキングをはじめる本 TryHackMeを使って身体で覚える攻撃手法と脆弱性
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
あたえる人があたえられる