神奇的二进制转换和运算

二进制的运算

正整数和二进制互转

二进制如何区分正负?

二进制位左边首位为0为正数,例如:6 --->00000110;1为负数,例如:-6---->11111010

正整数转二进制的过程(以6为例):模2取余直到商为0

正整数转二进制

注意:在计算机中存储字节是定长的,即我们8、16、32位等等,6的二进制位为110,但如果在8位计算机中是00000110,高位补零

二进制转正整数的过程(以6为例):从右到左,逐位多乘2

二进制转正整数

负整数和二进制互转

负整数转二进制的过程:用对应正整数转二进制后,取反加1

负整数转二进制

二进制转负整数的过程:取反加1,再加上负号

-6的二进制位为11111010,取反为00000101,然后加1为00000110,110为6,故值为-6

小数和二进制互转

小数转二进制的过程:整数部分按正负整数正常转换;小数部分将小数不断乘2,不足1添加一个位0,满足1添加位1。

小数转二进制

小数转二进制,先把整数为转换成二进制,然后把小数位转换(小数为换算每次乘2,不足1为0),最后相加,6.25的二进制为110.01

二进制转小数的过程:整数小数分别反向计算后相加

二进制转小数

位运算

$按位与

|按位或

^按位异或

~取反

<<左移

>>右移

>>>(无符号右移运算符)

常用位运算操作

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值