/doc/efun/clear_bit


SYNOPSIS

string clear_bit(string str, int n)

DESCRIPTION

Return the new string where bit n is cleared in string str. Note that the old string str is not modified.

Each character contains 6 bits. So you can store a value between 0 and 63 ( 2^6=64) in one character. Starting character is the blank character " " which has the value 0. The first charcter in the string is the one with the lowest bits (0-5).

EXAMPLE

	string s;
	s=clear_bit("_",5);
Because "_" is the highest possible value (63), the variable s will now contain the charcter "?" wich is equal to 31 (63-2^5=31).
	string s;
	s=clear_bit("?<",3);
	s=clear_bit(s,8);
s will now contain the string "78". "?" equals 31 and "<" equals 28. Now "?<" is equal to 31+28<<6=31+1792=1823 which is in binary notation (highest bit on the right side) 11111000111. Now clearing the bit 3 and bit 8 (bit numbering starts with zero) will result in 11101000011. The first 6 bits are in decimal notation 23 and the next 6 are equal to 24. Now the 23 is the character "7" and 24 is the "8". So the string s contains "78".

SEE ALSO

set_bit
test_bit

| Home | Applied | Concepts | Efuns | Help | Intro | Lib | LPC | Prop | Obj | Sefuns | Std | W |

Nightfall@quest.tat.physik.uni-tuebingen.de
Automatically generated on Don, 11. Apr 1996