Gen*_*ame 3 c++ bitwise-operators
uint8_t a = 0x01; //00000001
uint8_t b = 0xff; //11111111
uint8_t c = 0xf0; //11110000
maj(a,b,c) = 0xf1; //11110001
Run Code Online (Sandbox Code Playgroud)
我不确定如何访问和比较每一位,所以我可以得出结果?
@Henrik已经提供了一个很好的直接解决方案,需要5个操作.FWIW如果效率是一个问题,你可以减少到4个操作:
result = (a & (b | c)) | (b & c);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
350 次 |
| 最近记录: |