对于此问题,如果参数大于 7,则要求返回 1,否则返回 0。
例如,如果 x 为 8,则该函数将返回 1。如果 x 为 7,则该函数将返回 0。
唯一允许的合法运算符是 (! ~ & ^ | + << >>),它禁止使用其他任何运算符,例如 -、for 循环、while 循环、if 语句等。
我们可以假设系统使用 2 的补码和整数的 32 位表示,以算术方式执行右移,并且在将整数移位超过字大小时会出现不可预测的行为。
我知道不使用 - 操作的减法可以用 ~ 来完成,但说实话,我不知道如何从逻辑上思考这个问题。