十进制与二进制转换问题,很急,请各位帮帮忙 负的带小数的十进制数怎么转换成二进制数?比如: -53.35转换成二进制是什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MessageBox.Show(Convert.ToString((int)-53.35, 2));结果是"11111111111111111111111111001011" 对哦.MessageBox.Show(Convert.ToString((float)-53.35, 2));这是我收藏的,C#类型转换:http://hi.baidu.com/wnsn/blog/item/69ec133037bc4293a8018e1c.html 十进制小数转二进制小数方法 十进制小数→→→→→二进制小数 方法:“乘2取整”对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二进制数码,再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分.如此不断重复,直到小数部分为0或达到精度要求为止.第一次所得到为最高位,最后一次得到为最低位如:0.25的二进制0.25*2=0.5 取整是00.5*2=1.0 取整是1即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)0.8125的二进制0.8125*2=1.625 取整是10.625*2=1.25 取整是10.25*2=0.5 取整是00.5*2=1.0 取整是1即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位) 十进制小数→→→→→八进制小数 方法:“乘8取整” 0.71875)10 =(0.56)8 0.71875*8=5.75 取整50.75*8=6.0 取整6即0.56十进制小数→→→→→十六进制小数方法:“乘16取整”例如: (0.142578125)10=(0.248)16 0.142578125*16=2.28125 取整20.28125*16=4.5 取整40.5*16=8.0 取整8即0.248 非十进制数之间的转换 (1)二进制数与八进制数之间的转换 转换方法是:以小数点为界,分别向左右每三位二进制数合成一位八进制数,或每一位八进制数展成三位二进制数,不足三位者补0。例如: (423。45)8=(100 010 011.100 101)2 (1001001.1101)2=(001 001 001.110 100)2=(111.64)8 (2)二进制与十六进制转换 转换方法:以小数点为界,分别向左右每四位二进制合成一位十六进制数,或每一位十六进制数展成四位二进制数,不足四位者补0。例如: (ABCD。EF)16=(1010 1011 1100 1101.1110 1111)2 (101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5B4B。68)16upzone关注 - 0粉丝 - 1关注博主0 0 0 (请您对文章做出评价) public static int ToInt32 (string value,int fromBase)http://topic.csdn.net/u/20090203/11/d58b4651-c184-4473-9fde-d4c096b081d8.html Up 原理至于你用原理实现自己的转换方法还是用类库提供的,由LZ自己决定 如何在C#里面实现Java中的PKCS7加密的功能? 求解C# Socket 互通信的问题 .NET 做矩阵。如题: 格式化后就是1\0\0\0\0,怎么才能就让他是个1? C#继承Form的问题 如何判断鼠标的旋转方向问题.是顺时针还是逆时针转 请教大家关于通过网络浏览的问题 比较大小,排序,出现的问题! 有谁可以介绍一下remote service的问题吗? 可否提供些资料? 谢谢 如何实现字的水平移动!!! C#如何阻止文件被写入新内容 C#中 NULL 代表什么呢..!?
结果是"11111111111111111111111111001011"
MessageBox.Show(Convert.ToString((float)-53.35, 2));这是我收藏的,C#类型转换:
http://hi.baidu.com/wnsn/blog/item/69ec133037bc4293a8018e1c.html
十进制小数转二进制小数方法
十进制小数→→→→→二进制小数 方法:“乘2取整”对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二进制数码,再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分.
如此不断重复,直到小数部分为0或达到精度要求为止.第一次所得到为最高位,最后一次得到为最低位
如:0.25的二进制
0.25*2=0.5 取整是0
0.5*2=1.0 取整是1
即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)0.8125的二进制0.8125*2=1.625 取整是10.625*2=1.25 取整是10.25*2=0.5 取整是00.5*2=1.0 取整是1即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位) 十进制小数→→→→→八进制小数 方法:“乘8取整” 0.71875)10 =(0.56)8 0.71875*8=5.75 取整50.75*8=6.0 取整6
即0.56十进制小数→→→→→十六进制小数方法:“乘16取整”例如: (0.142578125)10=(0.248)16 0.142578125*16=2.28125 取整20.28125*16=4.5 取整40.5*16=8.0 取整8即0.248 非十进制数之间的转换 (1)二进制数与八进制数之间的转换 转换方法是:以小数点为界,分别向左右每三位二进制数合成一位八进制数,或每一位八进制数展成三位二进制数,不足三位者补0。例如: (423。45)8=(100 010 011.100 101)2 (1001001.1101)2=(001 001 001.110 100)2=(111.64)8 (2)二进制与十六进制转换 转换方法:以小数点为界,分别向左右每四位二进制合成一位十六进制数,或每一位十六进制数展成四位二进制数,不足四位者补0。例如: (ABCD。EF)16=(1010 1011 1100 1101.1110 1111)2 (101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5B4B。68)16upzone
关注 - 0
粉丝 - 1
关注博主0 0 0
(请您对文章做出评价)
string value,
int fromBase
)
http://topic.csdn.net/u/20090203/11/d58b4651-c184-4473-9fde-d4c096b081d8.html
Up 原理
至于你用原理实现自己的转换方法还是用类库提供的,由LZ自己决定