http://www.perlmonks.org?node_id=468867


in reply to Re: Bit operations for beginners
in thread Bit operations for beginners

Why? A boolean is either true or false. A bit is either 1 or 0. Commonly, boolean's are notated as 1 and 0, in fact, when we did boolean algebra in discreet structures, we always used 1's and 0's. I think it is very accepted and correct that bit ops are performed on booleans.

    -Bryan

Replies are listed 'Best First'.
Re^3: Bit operations for beginners
by ikegami (Patriarch) on Jun 22, 2005 at 04:51 UTC

    Bits means, by definition, Binary digITS. "true" and "false" are not digits, but "0" and "1" are. Why use a reprentation when you can use an actual value?

    Besides, it's vague. While 0 and 1 can be false and true, false and true can be more than 0 and 1. Why say "I like food" when you mean "I like chocolate"?

    The term "boolean algebra" applies to both logical operators (for which values T and F are typically used) and bitwise operators (for which inputs 0 and 1 are typically used), so what you used in boolean algebra class is moot. Besides, you're not teaching boolean algrebra, you're teaching bitwise operators. What applies to one doesn't necesasrily apply to the other.

    By the way, you might have noticed everyone else used 1s and 0s in their replies.


    There's something else that's inconsistent. In the tables, Bit0 starts with 0/false then goes to 1/true, but Bit1 does the opposite. It makes for highly irregular (non-standard) and confusing tables. Look at the order everyone else used in their replies. They all used the same, standard order. Here it is for convenience:

    Bit0Bit1
    00
    01
    10
    11

    or with three inputs:

    Bit0Bit1Bit2
    000
    001
    010
    011
    100
    101
    110
    111

    etc.