首页 >后端开发 >C++ >二进制数的1的补码和2的补码是什么?

二进制数的1的补码和2的补码是什么?

WBOY
WBOY转载
2023-09-11 23:33:021735浏览

二进制数的1的补码和2的补码是什么?

二进制数以基数 2 表示。它仅使用“0”和“1”两位数字。二进制数中的每个数字都是一个

示例二进制数 - 0100010111

1 的补码

二进制的补码number 是通过将二进制数的数字反转,即 1 转为 0,0 转为 1 得到的。

示例

1’s Complement of 101100 = 010011

2 的补码

二进制数的补码是二进制数的补码加 1,即 1 的补码 + 1。

示例

2’s complement of 101101 is 010011.

示例代码

查找一个和两个补码的代码 -

#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

以上是二进制数的1的补码和2的补码是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除