A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© librazeng 中级黑马   /  2013-5-18 18:34  /  1840 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 librazeng 于 2013-5-20 21:50 编辑

为什么十进制转二进制,除2运算取余数就得出来了?我百思不得其解,求解释啊。

1982428261073181629.jpg (5.62 KB, 下载次数: 0)

十进制转二进制 算法

十进制转二进制 算法

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

13 个回复

倒序浏览
就这样得的,记住就行了,没有那么多为什么,
就像1+1为什么等于2一样
回复 使用道具 举报
反过来算一次就明白了
回复 使用道具 举报
同意楼上,反过来想
回复 使用道具 举报
其实这个问题问的夜挺好的,但是这是普通人无法解释的,这都是科学家做出来的固定模式,我们只是拿他来用。
比如说吃鱼,只要有鱼吃了就行了,没有必要知道他是怎么做的,这个底层技术不是谁都能理解的哦。
回复 使用道具 举报
袁梦希 发表于 2013-5-18 19:53
其实这个问题问的夜挺好的,但是这是普通人无法解释的,这都是科学家做出来的固定模式,我们只是拿他来用。 ...

这个问题困扰我很久,真的。。。
回复 使用道具 举报
这里 6 = 110  第一个1代表的是2的平方就是4  第二个1代表的是2的一次就是2 例如333等于3*100+3*10+3   
回复 使用道具 举报
郑齐育 发表于 2013-5-18 20:07
这里 6 = 110  第一个1代表的是2的平方就是4  第二个1代表的是2的一次就是2 例如333等于3*100+3*10+3    ...

我知道这回事情,二进制转十进制我知道,反过来就不知道。
回复 使用道具 举报
姑且把它当做一个公式,记住就ok啦。
还是把精力放在学习其他的java上吧。
或许若干年后,暮然回首,我们就懂了。。。
回复 使用道具 举报
关于进制转换的一点个人心得
先来了解下数的组成:
以十进制为例。十进制是满十进一,十进制数是0~9各个数字组成的。
其中进位数 10 叫做权,0~9叫做基数,数就是由权和基数组合而成的。
来看看十进制下的1234是如何组成的。

1234 = 1*10[sup]3[/sup]+2*10[sup]2[/sup]+3*10[sup]1[/sup]+4*10[sup]0[/sup]
我们来看看如何用除法求出1234各位数上的基数(在十进制下你当然能一眼看出来)。


补充一句:1234除以10 商 123 余数 4 ,你想想 是不是把最低位的那个数字取出来了?? 123*10 + 4.
其实后面就是一步步取各个位数上的基数。得到的结果倒着写是从高位到低位。

有了十进制的基础在来看二进制。
二进制是逢二进一,二进制的权为2,基数为 0,1
其它进制依次类推(8进制的基数是不会有8的)
二进制的 110 十进制数是多少了?按上面的权和基数的做法
110 = 1*2[sup]2[/sup]+1*2[sup]1[/sup]+0*2[sup]0[/sup]
那么十进制的6怎么表示为二进制数?其实就是来求二进制下的基数了。图解



写出来也就是 110 了。









评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

回复 使用道具 举报
楼主可以自己尝试的写下 十进制9表示为二进制数。当然对于小点的数做除法是没有必要的。进制转换不是很难,这里没涉及到小数部分。
处理起来也不是很难。
如果你要了解进制,那你就要看看相关方面的书。也不需要了解太深。由于最近时间太紧,我也没时间去做一个进制转换的基础知识总结。
回复 使用道具 举报
哥们,这个就是这个意思啊。有什么不理解的啊。
二进制怎么转成十进制你知道吧。就是把过程反向一下。
就这么而已。
回复 使用道具 举报
不胖的胖子 发表于 2013-5-19 09:27
楼主可以自己尝试的写下 十进制9表示为二进制数。当然对于小点的数做除法是没有必要的。进制转换不是很难, ...

谢谢!!
回复 使用道具 举报
楼主你好  如果问题已经解决  那么把帖子的类型改为“已解决”
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马