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:
“Love is the most melodious of all the harmonies, and we have an innate feeling for it. Woman is a delicious instrument of pleasure, but one must know the chords, study the pose of it, the timid keyboard, the changing and capricious fingering.”
—HonorĂ© De Balzac (17991850)
“Many bits of fox fur will make a fine robe.”
—Chinese proverb.
“What is Americanism? Every one has a different answer. Some people say it is never to submit to the dictation of a King. Others say Americanism is the pride of liberty and the defence of an insult to the flag with their gore. When some half-developed person tramples on that flag, we should be ready to pour out the blood of the nation, they say. But do we not sit in silence when that flag waves over living conditions which should be an insult to all patriotism?”
—Anna Howard Shaw (18471919)
“How utterly futile debauchery seems once it has been accomplished, and what ashes of disgust it leaves in the soul! The pity of it is that the soul outlives the body, or in other words that impression judges sensation and that one thinks about and finds fault with the pleasure one has taken.”
—Edmond De Goncourt (18221896)