ホームページ > バックエンド開発 > C++ > 2進数の1の補数と2の補数は何ですか?

2進数の1の補数と2の補数は何ですか?

WBOY
リリース: 2023-09-11 23:33:02
転載
1731 人が閲覧しました

2進数の1の補数と2の補数は何ですか?

2 進数は基数 2 で表されます。使用するのは「0」と「1」の 2 桁のみです。 2 進数の各桁は bit です。

2 進数の例 - 0100010111

1 の補数

2 進数の補数は、2 進数の桁を反転することによって得られます。つまり、1 は 0 に変換されます。 0を変換すると1として得られます。

1’s Complement of 101100 = 010011
ログイン後にコピー

2の補数

2進数の補数は、2進数に1を加えた補数、つまり1の1の補数です。

2’s complement of 101101 is 010011.
ログイン後にコピー

サンプルコード

1と2の補数を見つけるコード -

#include <iostream>
#include<string.h>
using namespace std;
int main() {
   char binary[10] = "01001011";
   cout<<&ldquo;Binary number is &rdquo;<<binary;
   //once complement....
   int length = strlen(binary);
   for(int i=0;i<length;i++) {
      if(binary[i] == &#39;0&#39;) {
         binary[i]= &#39;1&#39;;
      } else
         binary[i] = &#39;0&#39;;
   }
   cout<<&ldquo;One&rsquo;s Complement is &rdquo;<<binary<<endl;
   // cout<<binary[length-1];
   for(int i = length-1; i>=0; i--) {
      // cout<<binary[i];
      if(binary[i] == &#39;0&#39;) {
         binary[i] = &#39;1&#39;;
         //cout<<binary[i];
         break;
      } else {
         binary[i] = &#39;0&#39;;
      }
   }
   cout<<&ldquo;Two&rsquo;s complement is &rdquo;<<binary;
   return 0;
}
ログイン後にコピー

出力

Binary number is 01001011
One&rsquo;s complement is 10110100
Two&rsquo;s complement is 10110101
ログイン後にコピー

以上が2進数の1の補数と2の補数は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート