为了账号安全,请及时绑定邮箱和手机立即绑定

使用0x表示法的数字是什么意思?

使用0x表示法的数字是什么意思?

C
ibeautiful 2019-11-26 14:59:11
什么是一个0x上一个号码前缀是什么意思?const int shared_segment_size = 0x6400;它来自C程序。我不记得这是什么x意思,尤其是这封信的意思。
查看完整描述

3 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

以开头的文字0x是十六进制整数。(以16为基数)


这个数字0x6400是25600。


6 * 16^3 + 4 * 16^2 = 25600

例如,包含字母的示例(也用于十六进制表示法,其中A = 10,B = 11 ... F = 15)


这个数字0x6BF0是27632。


6 * 16^3 + 11 * 16^2 + 15 * 16^1 = 27632

24576    + 2816      + 240       = 27632


查看完整回答
反对 回复 2019-11-26
?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

在C和基于C语法的语言中,前缀0x表示十六进制(以16为底)。


因此,0x400 = 4×(16 2)+ 0×(16 1)+ 0×(16 0)= 4×((2 4)2)= 2 2 ×2 8 = 2 10 = 1024,或者一个二进制K 。


因此0x6400 = 0x4000 + 0x2400 = 0x19×0x400 = 25K


干杯,……


查看完整回答
反对 回复 2019-11-26
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

以0x十六进制开头的数字(以16为底)。0x6400代表25600。


转换,


将最后一位乘以1

将倒数第二位乘以16(16 ^ 1)

加倒数第二位乘以256(16 ^ 2)

加倒数第四位乘以4096(16 ^ 3)

...等等

因子1、16、256等是16的幂。


0x6400 = (0*1) + (0*16^1) + (4*16^2) + (6*16^3) = 25600 

要么


0x6400 = (0*1) + (0*16) + (4*256) + (6*4096) = 25600 


查看完整回答
反对 回复 2019-11-26
  • 3 回答
  • 0 关注
  • 2876 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号