IT関連の練習問題(ITキャパチャージ)
- リクルートが運営するキーマンズネットに無料会員登録することで、基本情報技術者で出題されるIT関連の問題を解くことができます。また、基本情報技術者試験の勉強で用語を調べるときに
IT単語帳は調べたいIT用語が簡単に調べられほとんどの用語をカバーしているのでたいへん便利です。基本情報技術者試験合格のためにぜひ、無料会員登録をしておきたいサイトです。
基本情報技術者試験講座 1の補数と2の補数で2進数のマイナスの数値を表現する
基本情報技術者試験で必ずマスターしておかなければならいのが2の補数表現である。基本情報技術者試験において繰り返し出題されるテーマである。
補数とはでは、補数の概念を理解してもらうために10の補数と9の補数を例に補数とは、ある基準となる数値から対象となる数値を引いたものであることを解説した。
ここでは、2進数のマイナスの数値を表現するときに用いられる2の補数表現について解説する。
基本情報講座 1の補数と2の補数のポイント
- 1の補数の求め方
- 各けたの1と0を反転する
- 2の補数の求め方
- 1の補数+1
- マイナスの10進数を2の補数表現する
- 10進数を2進数に変換し、その2進数を2の補数表現する
- 2の補数表現されたマイナスの2進数を10進数に変換する
- 最上位ビットに注目して、1ならばマイナスの数値であるから2の補数を求める。0ならばそのまま2進数を10進数に変換する。
基本情報技術者講座 1の補数と2の補数
2進数においては、基数の補数は2進数であるから、2の補数である。減基数の補数は、1の補数である。
2の補数と1の補数も10の補数と9の補数と同じ方法で求めることができる。
例えば、8ビット2進数の00011011の2の補数と1の補数は、以下の式で求めることができる。
- 2の補数
- 28−00011011
- 1の補数
- 28−1−00011011
28を2進数で表すと、100000000である。28−1を2進数で表すと11111111である。
したがって、2の補数と1の補数は以下のとおりである。
10進数の引き算であれば普段おこなっているのでスムーズに計算できるだろう。しかし、普段使っていない2進数の引き算では繰り下がりが慣れていないと時間がかかる。
2の補数と1の補数を見ると以下のことが分かる。
- 1の補数は、各けたの1と0を反転したものである
- 2の補数=1の補数+1
以上から2の補数と1の補数は引き算をおこなわずすに以下の順で求めればよい。これは、とても重要なのでしっかりマスターして欲しい。
- 10進数を2進数に変換する
- 表現するビット数で表す(上位に足りないけた数分0を補充する)
- 各ビットを1と0を反転させる(1の補数)
- 1の補数に+1する(2の補数)
このページの先頭