二进制与十进制转换问题

进制转换问题实为最基础也实用的一种基本技能。首先得说,进制转换很简单,但就是时间长不用依赖计算器就容易忘,毕竟这不像其他的能在日常生活就经常用的的数学。

那么就聊聊十进制与二进制的转化,十进制转化为二进制,两种方法:短除法,数轴法。先说短除法,用10进制数除以2,得到的余数按倒叙排列,把52化成2进制就像这样,得到的结果为110100

再说数轴法,所谓的数轴法就是在数轴上从右到左分别标记2^0到2^n比如2^0等于1,2^1等于2,2^2等于4,一直下去,然后观察10进制数由几个这样的数组成,拿52举例

52=32+16+4,32=2^5,16=2^4,4=2^2,那么从2^0开始,以上位为1,其余为0,就等于110100.实际上这两种方法没有什么本质的区别,只是第一种是拆分,第二中是组合,

逆操作而以,但明显第二种在熟练的情况下要简便的多。

2进制转化为10进制也极为简单,采用幂加和方式,从小数点左侧第一位为0次幂,小数点左侧第二位为1次幂,以此类推。当查看的位数为1时,则计算,当查看的位数为0时,则不计算。

例如100110转化为10进制就等于2^5+2^2+2^1=38.就是这样

时间: 2024-10-26 10:10:47

二进制与十进制转换问题的相关文章

js二进制和十进制转换代码

js二进制和十进制转换代码:十进制和二进制的转换是在编码中是时常用到的,下面就是一段这样的代码实例,希望能够给需要的朋友带来帮助.代码实例如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="author" conte

继续学习----二进制与十进制转换

二进制与十进制转换 本人有个更直接的方法,例如二进制数1000110转成十进制数可以看作这样: 数字中共有三个1 即第二位一个,第三位一个,第七位一个,然后十进制数即2的2-1次方+2的3-1次方+2的7-1次方即2+4+64=70 次方数即1的位数减一.如此计算只需要牢记2的前十次方即可在此本人为大家陈述一下:2的0次方是1 2的1次方是2 2的2次方是4 2的3次方是8 2的4次方是16 2的5次方是32 2的6次方是64 2的7次方是128 2的8次方是256 2的9次方是512 2的10

进制转换之二进制与十进制转换

一.正整数的十进制转换二进制: 要点:除二取余,倒序排列 解释:将一个十进制数除以二,得到的商再除以二,依此类推直到商等 于一或零时为止,倒取将除得的余数,即换算为二进制数的结果 例如把52换算成二进制数,计算结果如图: 52除以2得到的余数依次为:0.0.1.0.1.1,倒序排列,所以52对应的二进制数就是110100. 由于计算机内部表示数的字节单位都是定长的,以2的幂次展开,或者8位,或者16位,或者32位..... 于是,一个二进制数用计算机表示时,位数不足2的幂次时,高位上要补足若干个

二进制和十进制转换

注:八进制.十六进制和二进制同理,只不过将2换成8或16 二进制转换 正整数转成二进制:除二取余,直到商为零,然后倒序排列,高位补零. 例:42的二进制为:00101010 小数转换为二进制:乘二取整,直到小数部分为零,然后正序排列,即为二进制小数部分. 例:0.125的二进制为0.001 二进制转为十进制:相乘相加 整数部分 小数部分

算法 - 二进制和十进制转换

package main import "fmt" func main() { for i := 0; i <= 16; i++ { vB := Ito0B(0-i, 8) // int 转 bin 测试 vI := BtoI(vB) // bin 转 int 测试 fmt.Printf("%v, %2v\n", vB, vI) } } // bin 转 int func BtoI(s string) int { if len(s) > 0 &&

二进制 八进制 十进制 十六进制之间的转换

一. 十进制与二进制之间的转换 (1)十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数.下面举例: 例:将十进制的168转换为二进制 得出结果 将十进制的168转换为二进制,(10101000)2 分析:第一步:将168除以2,商84,余数为0.  第二步:将商84除以2,商42余数为0. 

二进制 八进制 十进制 十六进制

一. 十进制与二进制之间的转换 (1) 十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数.下面举例: 例:将十进制的168转换为二进制 得出结果 将十进制的168转换为二进制,(10101000)2 分析:第一步,将168除以2,商84,余数为0. 第二步,将商84除以2,商42余数为0. 

二进制与十进制的转换

表1二进制数和十进制数换算对照表 采用"二进制数"的算术运算也比较简单制造成本更经济.二进制的加法运算和乘法运算公式都各有四条规则加法有0+0=00+1=1,1+011110乘法有0*0=00*1=0 1*0=0 1*1=1而十进制的加法和乘法运算公式从00开始到99从0*0开始到9*9各需规则100条. 2:二进制代码 电子计算机中的数是用二进制表示的在计算机中也采用二进制代码表示字母.数字字符.各种各样的符号.汉字等.在处理信息的过程中可将若干位的

Formiko总结整数十进制转换二进制原理

引子: 为什么十进制转二进制的“辗转相除记录余数倒序输出”的算法是正确的?这个问题陪伴了Formiko半年. 实践: 实践一:把十进制数100转换成二进制数的图   上图和和下图唯一的区别在最后一位上,只是除到0和除到1的区别,但在算法本身的理解上应该不会有本质的区别. 实践二: 十进制数100或许太大,不便于一目了然的验证.试一试十进制数1,2,3. 思考: 以上算法的思路是“对原数反复进行除法得到余数,最后将余数倒序输出”.但是看到如图对十进制数100,1,2,3的操作,都看不出原思路的由来