首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

二进制加法怎么实现

2012-05-08 
二进制加法如何实现我知道一种办法是:二进制——十进制——加法——结果转换为二进制,有没有高手知道其他的办

二进制加法如何实现
我知道一种办法是:二进制——>十进制——>加法——>结果转换为二进制,
有没有高手知道其他的办法?
我的目的,IP地址[color=#FF0000,0.0.0.255[/color],加一为0.0.1.0。

[解决办法]
有幸回答这个问题:
以下只是个人写法,不对请说出来。谢谢。

C# code
    char[] add1 = new char[] { (char)0, (char)0, (char)0, (char)255 };    char[] add2 = new char[] { (char)0, (char)0, (char)0, (char)1 };    char[] result = new char[] { (char)0, (char)0, (char)0, (char)0 };    int 进位 = 0;    for (int i = 3; i >= 0; i--)    {        进位 = (add1[i] + add2[i] + 进位);        result[i] = (char)(进位&0xff);        进位 = 进位 >> 8;    }    //輸出:    StringBuilder sb = new StringBuilder();    for (int i = 3; i >= 0; i--)    {        sb.AppendLine(((int)result[i]).ToString());    }    MessageBox.Show(sb.ToString(),"输出");
[解决办法]
加法没有进制问题,进制只是显示的格式而已,如果你有一个二进制字符串表示的整数,要实现加法,最好先把二进制字符串转化了整数,然后加法,然后再用String.Format格式化为二进制或者十进制或者十六进制,

进制只是显示格式,不应当用字符串直接实现加法,那样效率非常低,而且也麻烦,没必要这么做,

热点排行