在数据传输过程中,都是采用字节数据的方式进行通信转递的
一个字节代表一个Byte有8个位
其中10进制的表示范围为0-255
16进制的表示范围FF
一个int16位整数,则由2个字组成
int32则由4个字组成
BitConverter.ToUInt16(bytes, 1);
在内存中,数值型数据次序与数组是相反的,即低字节在前面,高字节在后面。
在内存中是(用 16 进制表示) a, 8a ,13,当把这2个字节(从下标为1开始)当成 int16 时,为 138a(十进制的 5002).
总结:也就是从数组中取下标为1以后的两个字节,先各字节转换为16进制,然后倒序组合,转换为10进制。
(十进制 -> 十六进制 -> 倒序 -> 十进制)
同理:ToUInt32 取4个字节。ToUInt64 取8个字节。以上均为无符号(无负数范围)
原文:https://www.cnblogs.com/cod1ONE/p/14797066.html