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

十六进制转化为二进制的问题

十六进制转化为二进制的问题

C
FOSS 2016-12-23 11:38:46
这是用位操作的办法转进制,不知道a&1<<i?1:0 是什么意思,如果要在二进制数上补零应该怎么改?感谢回答
查看完整描述

2 回答

已采纳
?
qq_zhaozhenwei_0

TA贡献2条经验 获得超0个赞

1装换成2进制的话是 0000 0000 0000 0001 ,这里假设1是short类型的,两个字节,当然也可以是int的4字节 0000 0000 0000 0000 0000 0000 0000 0001。1<<i :即每次向左移动i位,比如第一次循环i=15.    1<<15 等于 1000 0000 0000 0000 ,这个时候把a展开成二进制,与1<<15进行与与运算,0与 0或1都为0,这样只需要看第十六位的1与a的第十六位做与运算结果,为1的话说明 a  的第十五位为1 ,为0的话说明     a  的第十五位为0,以此类推    

查看完整回答
反对 回复 2016-12-23
?
qq_zhaozhenwei_0

TA贡献2条经验 获得超0个赞

二进制数上补零什么意思


查看完整回答
反对 回复 2016-12-23
  • qq_zhaozhenwei_0
    qq_zhaozhenwei_0
    ff33转换成2进制就是1111111100110011,不用补零,一个16进制转换成4个2进制
  • 2 回答
  • 0 关注
  • 1398 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信