linux - IPv4数据库包计算问题
天蓬老师
天蓬老师 2017-04-17 14:52:42
0
1
353

下面是用tcpdump抓到的IPv4包

IP 10.31.90.106.37600 > 10.31.90.132.36000: Flags [S], seq 1592276107, win 14600, options [mss 1460,sackOK,TS val 883954282 ecr 0,nop,wscale 7], length 0 0x0000: 4510 003c 26e1 4000 4006 4a9f 0a1f 5a6a 0x0010: 0a1f 5a84 92e0 8ca0 5ee8 348b 0000 0000 0x0020: a002 3908 4bbd 0000 0204 05b4 0402 080a 0x0030: 34b0 126a 0000 0000 0103 0307

根据进制转换可知,
0x0000的十进制为0
0x0010的十进制为16
也就是说4510 003c 26e1 4000 4006 4a9f 0a1f 5a6a 这行每个字段为2字节,

但是如果运算0x4510的话,十进制值为17680,那么这个2字节是如何计算的呢?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复 (1)
伊谢尔伦

对于无符号数

17680 = 4*16^3 + 5 * 16^2 + 1 * 16^1 + 0 * 16^0

任何进制的数都可以这样算

Sum[ai * 基数^i,{i,0,n-1}]
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!