十进制1000转二进制的过程

楼上的讲的都是可行的方法,但如果你觉得除太多次数麻烦的话可以这样:

1、找出距离1000最小的2的n次方:

这里应该是2^10 = 1024;

是2的几次方就在1后添几个零,所以:

1024 = 1,0000,0000,00

这个数就是1024的二进制形式。

2、把该值与1000的差值求出来:

这里1024 - 1000 = 24;

24 = 2^4 + 2^ 3;

所以24的的二进制就为:

1,0000 +

0,1000 =

1,1000;

3、因为1000 = 1024 - 24所以:

1000的二进制 =

1,0000,0000,00 -

0,0000,0110,00 =

0,1111,1010,00

二进制的家减法和十进制规律相同,只不过是逢2进一,借位为2,比如:

加法只要记住同一位如果有2个1相加那么该位就为0且向前一位进一,如:

0100(4) +

0111(7) =

1011(11)

减法只要记住同一位如果有0减1不够减的话向前一位借的数是2,前一位如果为1借后就为0;如果前一位为0就需要再向前一位借2,直到借够为止,被借过的位都变为1,如:

1,0000(16) -

0,1001(9) =

0,0111(7)

如果你是要把10进制数表示为2进制输出的程序的话我也写了个,你可以参考下:

#include <iostream>

#include <limits>

using namespace std;

int main()

{

typedef unsigned long ulong;

const ulong usize = numeric_limits<ulong>::digits;

const ulong number = 1000; // 要转换的10进制数

ulong high_bit = 0x80000000;

bool encounter_1 = 0;

for(int i = 0; i < usize; ++i)

{

if((high_bit >> i) & number)

{

encounter_1 = true;

cout << '1';

}

else if(encounter_1)

{

cout << '0';

}

}

}

采用"乘2取整,顺序排列"法可以十进制小数转化为二进制,现在以十进制数0.125为例进行演示,具体操作请参照以下步骤。

1、方法主要是小数部分乘以2,取整数部分依次从左往右放在小数点后,直至小数点后为0,以0.125进行演示。

2、首先将小数部分0.125乘以2,得0.25,然后取整数部分0。

3、然后再将小数部分0.25乘以2,得0.5,然后取整数部分0。

4、然后再将小数部分0.5乘以2,得1,然后取整数部分1,没有小数部分了。

5、得到的二进制的结果是0.001。完成以上设置后,即可把十进制小数转化为二进制。

本文来自作者[北辰超级甜]投稿,不代表泰博号立场,如若转载,请注明出处:https://www.staplesadv.cn/ds/45206.html

(1)
北辰超级甜的头像北辰超级甜签约作者

文章推荐

发表回复

作者才能评论

评论列表(3条)

  • 北辰超级甜的头像
    北辰超级甜 2025年09月28日

    我是泰博号的签约作者“北辰超级甜”

  • 北辰超级甜
    北辰超级甜 2025年09月28日

    本文概览:楼上的讲的都是可行的方法,但如果你觉得除太多次数麻烦的话可以这样:1、找出距离1000最小的2的n次方:这里应该是2^10 = 1024;是2的几次方就在1后添几个零,所以:1...

  • 北辰超级甜
    用户092807 2025年09月28日

    文章不错《十进制1000转二进制的过程》内容很有帮助

联系我们

邮件:泰博号@gmail.com

工作时间:周一至周五,9:30-17:30,节假日休息

关注微信