IP数据包解析C++源代码问题

IP数据包解析C++源代码问题,第1张

首先要看version是引用类型,其肯定是返回参数。

b为Byte类型,其实就是二进制类型其样式者掘为10011101,一共八个bit。b>>4就是移位运猛嫌掘算,10011101 >>4 = 00001001(举例)

很明显,version版本存放在b的高4位中。

result = (b&0x0f)*4这个很明显是为了提取b的低四位数据,因为0x0f = (0000 1111)(B),然后乘以*4,就是左移2位,我擦楼枝核主,你好好看看谭浩强的书吧!1 <<2 = 2^2 = 4

swith(b>>5)右移5位,和上面一样,如果是 1001 1101 >>5 = 0000 0100

后面的我就不说了,其实如果你理解前面的,后面的就都懂了。

楼猪,建议你看看谭浩强的书,位运算章节,不是很难。

Serialport.PortName = COM1

Serialport.BaudRate = 9600

if (!Serialport.IsOpen)// 打开串口尺笑

{

Serialport.Open()

}

bytedatafive = new byte[] { 2, 2, 2, 1, 3 }

sendnumber(datafive)

Serialport.Write(sendbyte, 0, sendbyte.Length) /陵橡含/ 发送数据如尺


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12484427.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存