跳转到内容

Futurebasic/语言/参考/not

来自维基教科书,开放的书籍,开放的世界
value = NOT expr

NOT 运算符将 expr 解释为一个整数,并返回另一个整数,其内部位模式中的所有位都被翻转为相反的状态(即,所有 1 都变为 0;所有 0 都变为 1)。巧合的是,由于 FB 中存储整数的方式,NOT expr 返回的值等于: -(expr + 1)

NOT 的一个常见用途是反转表达式的含义,其值为 _zTrue (-1) 或 _false (0)。注意,(NOT_zTrue) 返回 _false,而 (NOT _false) 返回 _zTrue。在使用 NOT 处理除 -1 以外的“真”值时,必须小心。例如

testValue = 35
IF testValue <b>THEN BEEP</b> 'This produces a beep<br>
</code><code><b>IF NOT</b> testValue <b>THEN BEEP</b> 'But so does this!

此程序发出两声哔哔声,因为在第二个 IF 语句中,“NOT testValue” 产生值 -36,这仍然被 IF 语句解释为“真”。

NOT 的另一个常见用途是帮助您设置或重置位模式中的单个位。例如

ÊÊÊpattern& = pattern& <b>AND NOT BIT</b>(7)

这将 pattern& 中的第 7 位设置为零,并将 pattern& 的所有其他位保持不变。

AND; OR; XOR

华夏公益教科书