主要是P4使用中可能会需要一些骚操作,遂阅读此书;
默认字长为32位;
ch2
最右边的位元:
- 考虑用x+1,x-1配上与或非取反进行操作,比如$x \& (x-1)$;
- $\neg x\&(x+1)$,$\neg x\&(x-1)$,$\neg x |(x+1)$……
- 这块建议查书;
从右到左的可计算性:
如果一个函数能够以位元为单位从右到左计算出来,那么它肯定可以用加法减法按位和按位与以及按位取反及其复合指令实现;反之,如果这些基本指令描述一个函数,那么它必然可以通过从右到左的按位运算做出来;
我觉得可能要反复揣摩这个定理:
根据书上的特例可以很清晰的理解它要表达的用于构造的例子:
上面的可以通过下面的获得,第二行第三行按位与然后和第一行按位或然后和第四行按位与(先执行操作然后对位置定位)
与此同时有一些问题没法用五个基本运算组合得出,这里就要看想要获得的结果与原始输入之间的关系,是不是从右到左的,也就是说最右边的值不应该和它左边的有联系,比如如下的例子: