C/C++进行循环左移和右移
发布时间
阅读量:
阅读量
目录
循环移位可直接调用的函数(循环右移、循环左移)
完整代码
目录
循环移位可直接调用的函数(循环右移、循环左移)
完整代码
本文中提及的实用技巧
需特别留意的事项
本文中提及的实用技巧
达成对无符号数值进行循环左移与循环右移的操作
循环移位直接可用的函数(循环右移、循环左移)
//val表示需要进行移位操作的数值,n表示移位的位数
//字节数乘以8用于计算总的位数
//实现向右循环移n位的方法:假设数据总共有size位,先将数据向左移size-n位,再将该结果与原数值右移n位后的结果进行或运算
//val表示需要移位的数 n表示移位位数
//字节数乘以8代表一共多少位
//向右循环移n位的结果:假设数据一共size位,向左移size-n位,再与原数右移n位进行或操作的结果
uint32 bit_move(uint32 val, int n) {
uint32 size = sizeof(val) * 8;
n = n % size;
//return (val >> (size - n) | (val << n));//左移
return (val << (si
全部评论 (0)
还没有任何评论哟~
