bit manipulation |
CPUID |
official mnemonic |
operation |
description |
example |
better mnemonic from description |
better mnemonic from operation |
|
TBM |
BLCS |
X | (X+1) |
turn on rightmost 0-bit |
10101011 => 10101111 |
BM SET RM0 |
ADD1OR |
BMI |
BLSR |
X & (X-1) |
turn off rightmost 1-bit -- test if X is 2^n |
10101000 => 10100000 |
BM CLR RM1 |
SUB1AND |
|
TBM |
BLCFILL |
X & (X+1) |
right-propagate rightmost 0-bit -- test if X is 2^n-1 |
10100111 => 10100000 |
BM RPR RM0 |
ADD1AND |
TBM |
BLSFILL |
X | (X-1) |
right-propagate rightmost 1-bit |
10101000 => 10101111 |
BM RPR RM1 |
SUB1OR |
|
TBM |
BLCMSK |
X ^ (X+1) |
form mask of rightmost 0 and trailing 1s |
10101011 => 00000111 |
BM FM RM0 T1S |
ADD1XOR |
BMI |
BLSMSK |
X ^ (X-1) |
form mask of rightmost 1 and trailing 0s |
10101000 => 00001111 |
BM FM RM1 T0S |
SUB1XOR |
|
BMI |
BLSI |
X & -X |
form mask of rightmost 1-bit |
10100100 => 00000100 |
BM FM RM1 |
NEGAND |
TBM |
BLCIC |
~X & (X+1) |
form mask of rightmost 0-bit |
10101011 => 00000100 |
BM FM RM0 |
ADD1ANDN |
TBM |
TZMSK |
~X & (X-1) |
form mask of trailing 0s |
10101000 => 00000111 |
BM FM T0S |
SUB1ANDN |
|
TBM |
BLCI |
X | ~(X+1) |
form complemented mask of rightmost 0-bit |
10101011 => 11111011 |
BM FCM RM0 |
ADD1NOTOR |
TBM |
BLSIC |
~X | (X-1) |
form complemented mask of rightmost 1-bit |
10101100 => 11111011 |
BM FCM RM1 |
SUB1ORN |
TBM |
T1MSKC |
~X | (X+1) |
form complemented mask of trailing 1s |
10101011 => 11111100 |
BM FCM T1S |
ADD1ORN |