A way to organize the results of combining logical Boolean variables for a single Boolean operation.

Since there are 22=4 possible combinations of two Boolean variables, there are 24 = 16 possible Boolean operations on two variables (If we had three variables, there would be 23=8 possible outcomes and thus 28=256 possible operations). If we combine all of the possible truth tables into a single table, we can order the truth tables by the number that results from interpreting the four results as a binary representation:

P = 0 1 0 1
Q = 0 0 1 1  Dec Hex    Interpretation
    -------  --- ---    ----------------
    0 0 0 0    0   0    Zero
    0 0 0 1    1   1    P AND Q
    0 0 1 0    2   2    Q AND (NOT P)
    0 0 1 1    3   3    Q
    0 1 0 0    4   4    P AND (NOT Q)
    0 1 0 1    5   5    P
    0 1 1 0    6   6    (P != Q) aka (P XOR Q)
    0 1 1 1    7   7    P OR Q
    1 0 0 0    8   8    NOT (P OR Q)
    1 0 0 1    9   9    (P = Q) aka (P iff Q)
    1 0 1 0   10   A    NOT P
    1 0 1 1   11   B    P -> Q aka (P implies Q)
    1 1 0 0   12   C    NOT Q
    1 1 0 1   13   D    P <- Q aka (P if Q)
    1 1 1 0   14   E    NOT (P AND Q)
    1 1 1 1   15   F    One

Each four-digit binary representation can also be interpreted as a hexadecimal digit; This will be familiar to old-time GUI (Windows and X) programmers as the list of raster operators when performing something like a bitblt.