投票最简单的进行进制转换!计算机专业必收藏(二进制篇)。


3楼猫 发布时间:2024-05-23 02:43:22 作者:晓小事 Language

序:

最近做了两道基础题发现时间长没有换算算错了 写下这篇文章以复习。

上面得乘除是课本上会教得方法,加减是我在学习过程中自己总结的 就当看个思路。

2进制里只有两个数字 0 和1 没有其他任何数字

乘除:

举例:

十进制:175

二进制:10101111

  • 十进制转二进制

"除2取余,逆序排列"法:

首先用2整除一个十进制整数,得到一个商和余数

然后再用2去除得到的商,又会得到一个商和余数

重复操作,一直到商为小于1时为止

然后将得到的所有余数全部排列起来,再将它反过来(逆序排列)

举例:用除2取余法十进制175转二进制

175÷2余1

87÷2余1

43÷2余1

21÷2余1

10÷2余0

5÷2余1

2÷2余0

1÷1余1

从下往上写就是10101111 到此转换完毕。

  • 二进制转十进制

“位权法”:

要从右到左用二进制的每个数去乘以2的相应次方

从左往右给每一个数字赋予一个权,依旧以10101111举例

1010111

7654321

上面的是要转换的二进制,下面的是对应的每一位的权

拿二进制去乘2的权术次方再相加

(1* 2的零次方) + (1* 2的一次方)+ (1 * 2 的二次方)+(1 * 2的三次方) +(0 * 2的四次方) +(1* 2的五次方) + (0 * 2的六次方) + (1 * 2的7次方) = 1 + 2 + 4 + 8 + 0 + 32 + 0 + 128 = 175

嗯简单是简单但是太麻烦了,一个数字要转换半天。

加减:

有没有既简单还方便的办法呢?

我们让乘除法变成加减法。

先数一数10101111有几位?

八位,那从1开始。

128 64 32 16 8 4 2 1

如果是9位那么就是:

256 128 64 32 16 8 4 2 1

然后将要转换的2进制一一对应。

128 64 32 16 8 4 2 1

1 0 1 0 1 1 1 1

把下面有1的数字加起来

128+32+8+4+2+1=175

到此二进制转10进制结束。

十进制转二进制

175

依旧列出

128 64 32 16 8 4 2 1

拿175去从左往右减 175-128= 47 标注1

接着减发现47-64不够 标注0 ,.47-32=15 能减 标注为1,15-16 又不够 标注0 ,15-8=7 标注1,7-4=3标注1,3-2=1标注1,1-1=0标注为1。

即得出10101111

到此转换完毕

小数同理

101011.11

32 16 8 4 2 1 0.5 0.25

一一对应加或者减。

注意:小数点相当于分割点 没小数点是从1开始 有小数点是小数点后有几位就写几位。

下半部分方法如熟练算起来会很快。


© 2022 3楼猫 下载APP 站点地图 广告合作:asmrly666@gmail.com