这是一个函数,用C表示:
uint32_t f(uint32_t x) {
return (x * 0x156) ^ 0xfca802c7;
}
Run Code Online (Sandbox Code Playgroud)
然后我遇到了一个挑战:如何找到所有固定点?
我知道我们可以测试每个uint32_t值来解决这个问题,但是我仍然想知道是否有另一种更优雅的方式 - 特别是当uint32_t变为uint64_t并且(0x156, 0xfca802c7)是一对任意值时.