假设都在x86或x86_64架构CPU上进行运算,二进制基本运算包括,加减乘除、与、或、异或、同或、移位
假设n 为 32 位整形数,取正整数n除以8的余数 : n & 0x07
假设n 为 32 位整形数,取正整数n除以16的余数 : n & 0x0F
假设n 为 32 位整形数,8位对齐 : (n + 7) & 0xFFFFFFF8)
假设n 为 32 位整形数,32位对齐 : (n + 31) & 0xFFFFFF80)
假设n 为 32 位整形数,求8位对齐填充位数 ((n + 7) & 0xFFFFFFF8) – n;
求int 最大值 : (1 << 31) – 1 或者干脆 0x7FFFFFFF
求int 最小值 : 1 << 31
判断奇偶数 : n & 1 == 1
交换a b 两个变量的值 : a ^= b ^= a ^= b;
n 乘以2的m次方 : n << m
之所以写这篇博客,是因为最近在用c++重构fastcgi,以使其能够更好地支持多线程
之所以写这篇博客,是因为最近在用c 重构fastcgi,以使其能够更好地支持多线程
学习