
| Command Summary | Command Syntax | Calculator Compatibility | Token Size |
|---|---|---|---|
| Tests if two conditions are both true. Can also be used as a bitwise "and" on integers. |
condition1 and condition2 integer1 and integer2 |
This command works on all calculators. | 1 byte |
Menu Location
- Press 2nd MATH to enter the MATH popup menu.
- Press 8 to enter the Test submenu.
- Press 8 to select and.
The and Command
The and operator combines two conditions into one, which will be true if both sides are true, and false otherwise. You can create these conditions with the relational operators =, ≠, >, ≥, <, and ≤, with functions such as 68k:isPrime(), 68k:pxlTest(), and 68k:ptTest(), or with any other expression that returns 'true' or 'false'. Other operators for dealing with conditions are 68k:or, 68k:xor, and 68k:not.
:2+2=4 and 1=0
false
:2+2=4 and 1+1=2
true
The operator can also be applied to integers, treating them as 32-bit signed integers (larger integers will be truncated to fit) expressed in binary. The bits will be matched up, and "and" will be applied to the bits individually — a bit in the result will be 1 if the two corresponding bits of the original integers were 1, and 0 otherwise.
:(0b11111100 and 0b00111111)▶Bin
0b111100
:1000 and 512
512
In complicated logical expressions (both with conditions and with integers), and has greater priority than the others ("or" and "xor"). For instance:
X or Y and Z
will be interpreted as:
X or (Y and Z)
Error Conditions
60 - Argument must be a Boolean expression or integer happens when the data type is incorrect (or mismatched).