redis中getbit,setbit和bitcount



现在如何通过setbit将akey中的值由a变成b呢

我们知道 'a' 的ASCII码是 97。转换为二进制是:01100001

b的ASCII码是98(即01100010

a的ASCII码01100001

b的ASCII码01100010

所以需要将a变成b只需要将红色标注的二进制位改变即可

执行如下命令

至于上面返回为什么是(integer) 0,因为a的ASCII码01100001中第六位是0,也就是setbit之前的值


(integer) 1也是同样道理、

下面为执行上面两条setbit命令后的结果,发现akey=b


bitcount返回ASCII码中1的位数


redis中getbit,setbit和bitcount_第1张图片

你可能感兴趣的:(redis)