将两个byte型拼接成16位二进制
额,要将两个byte型拼接成16位二进制,再转化为十进制应该怎么弄呢
1 2 3 4 5 6 7 8 9 |
short s
= 0; //一个16位整形变量,初值为
0000 0000 0000 0000
byte b1
= 1; //一个byte的变量,作为转换后的高8位,假设初值为
0000 0001
byte b2
= 2; //一个byte的变量,作为转换后的低8位,假设初值为
0000 0010
s
= ( short )(s
^ b1); //将b1赋给s的低8位
s
= ( short )(s
<< 8); //s的低8位移动到高8位
s
= ( short )(s
^ b2); //在b2赋给s的低8位
Console.Out.WriteLine(Convert.ToString(s,
2)); //以二进制输出s
Console.Out.WriteLine(s); //以十进制输出s
Console.ReadLine();
|
这样输出的十进制带有符号吗?追答:
你把上面 short 全部换成 ushort 输出的就是的无符号数了
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: c# 字节数组的拆分和合并
- 下一篇: 两个byte[]数组合并