【发布时间】:2011-06-08 06:53:31
【问题描述】:
为什么像 TCP 或 UDP 这样的协议头在填充协议头中的特定字段时通常使用十六进制表示?有什么特别的优势吗?
【问题讨论】:
标签: tcp network-programming udp protocols hex
为什么像 TCP 或 UDP 这样的协议头在填充协议头中的特定字段时通常使用十六进制表示?有什么特别的优势吗?
【问题讨论】:
标签: tcp network-programming udp protocols hex
根据所讨论的字段(标志,例如 SYN FIN ACK RST URG PSH ..),最容易使用位移算法 (0x1 < TCP_OFFSET_SYN) 和 OR | 或 AND & 结果设置字段与现有字段。十六进制的位移比十进制更容易,而且通常比八进制更方便阅读。
归结为,编写您正在阅读的代码的人可能认为在这种情况下十六进制比十进制更容易理解,但这显然是主观的。您的意见可能会有所不同。 :)
【讨论】:
实际上是为了方便起见,如果你检查实际的数据包,它们都是二进制数据,为了便于阅读,它显示为十六进制
【讨论】: