Flag Word - Changing Bits in Flag Words

Changing Bits in Flag Words

Writing, reading or toggling bits in flags can be done only using the OR, AND and NOT operations - operations which can be performed quickly in the processor.

To set a bit, OR the status byte with a mask byte. Any bits set in the mask byte or the status byte will be set in the result.

int setBit(int val, int bit_position) { return val | (1 << bit_position); }

To clear a bit, perform a NOT operation on the mask byte, then AND it with the status byte. The result will have the appropriate flag cleared (set to 0).

int clearBit(int val, int bit_position) { return val & ~(1 << bit_position); }

To toggle a bit, XOR the status byte and the mask byte. This will set a bit if it is cleared or clear a bit if it is set.

int toggleBit(int val, int bit_position) { return val ^ (1 << bit_position); }

Read more about this topic:  Flag Word

Famous quotes containing the words changing, bits, flag and/or words:

    Dissonance between family and school, therefore, is not only inevitable in a changing society; it also helps to make children more malleable and responsive to a changing world. By the same token, one could say that absolute homogeneity between family and school would reflect a static, authoritarian society and discourage creative, adaptive development in children.
    Sara Lawrence Lightfoot (20th century)

    What in fact have I achieved, however much it may seem? Bits and pieces ... trivialities. But here they won’t tolerate anything else, or anything more. If I wanted to take one step in advance of the current views and opinions of the day, that would put paid to any power I have. Do you know what we are ... those of us who count as pillars of society? We are society’s tools, neither more nor less.
    Henrik Ibsen (1828–1906)

    Swift blazing flag of the regiment,
    Eagle with crest of red and gold,
    These men were born to drill and die.
    Point for them the virtue of slaughter,
    Make plain to them the excellence of killing
    And a field where a thousand corpses lie.
    Stephen Crane (1871–1900)

    There’s something like a line of gold thread running through a man’s words when he talks to his daughter, and gradually over the years it gets to be long enough for you pick up in your hands and weave into a cloth that feels like love itself. It’s another thing, though, to hold up that cloth for inspection.
    John Gregory Brown (20th century)