按键清零是0xff吗c语言,与0xff进行按位于操作,是怎么做到清零的?

c3adc8a93d97e60c75b95acfdde4cbdc.png

慕瓜306993

2019-05-01 20:31

writeInt()方法中的源码  每次读取字节信息 都是经过了一次无符号右移和位与操作。 而老师在写入一个字节的时候并没有写位与操作。 因此其实写不写都可以 因为每次读取的信息都是低八位。 但是源码中的位与操作 确实做到了“清零”。 这个清零意思指的是 将前面24高位均置为0.

举负数说明:  11111111   11111111   11101000 11110111

右移24位  00000000   00000000   00000000   11111111   位与0xff 后 结果 为0xff  读取 0xff

右移16位 00000000   00000000   11111111   11111111   位与0xff后   结果为  0xff   读取 0xff

右移8位  00000000   11111111   11111111    11101000  位与0xff后   结果为  0xe8   读取0xe8

右移0位   11111111    11111111   11101000   11110111  位与0xff后   结果为0xf7   读取0xf7

看资料说 读取字节信息 进行位与0xff操作 是为了保证二进制数据的一致性。  这样传输的二进制信息是安全的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值