读书人

C#能否把带符号的二进制数直接转换成十

发布时间: 2012-05-16 23:40:10 作者: rapoo

C#能否把带符号的二进制数直接转换成十进制?-求助
如题,比如 int a=207;
换算成二进制是1100 1111,最前一个为符号位,需要先求反码再+1才能得到带符号的十进制数,c#中有没有现成的函数,能直接转换的?如果没有,用c#如何实现反码补码之类的运算,大大们给个例子,感谢。
分不多,求解答。

[解决办法]

C# code
public static int TwoToTen(string num2)        {            int num10 = 0;            for (int i = 0; i < num2.Length; i++)            {                num10 += (int)Math.Pow(2, i) *                              Convert.ToInt32(num2.Substring(num2.Length - i - 1, 1));            }            return num10;        }
[解决办法]
int a = 207;
string s = Convert.ToString(a, 2);
输出s
[解决办法]
探讨

2楼大大的只是把十进制转换成了二进制的字符串,我的意思是,把二进制字符串“10101111”转换成带符号的十进制数-47,因为计算机负数存的是补码,需要转换成原码,才能得到

读书人网 >C#

热点推荐