Difference between revisions of "$isbit"
From Scriptwiki
(added category) |
|||
Line 30: | Line 30: | ||
[[while]] (%i [[If-Then-Else#The_Operators|<=]] 13) { | [[while]] (%i [[If-Then-Else#The_Operators|<=]] 13) { | ||
[[echo]] -ag %i bit is [[$iif]]($isbit(13,%i),On,Off) | [[echo]] -ag %i bit is [[$iif]]($isbit(13,%i),On,Off) | ||
− | inc %i | + | [[inc]] %i |
} | } | ||
− | == | + | == See also == |
*[[$and]] | *[[$and]] | ||
*[[$biton]] | *[[$biton]] | ||
Line 40: | Line 40: | ||
*[[$or]] | *[[$or]] | ||
*[[$xor]] | *[[$xor]] | ||
+ | |||
+ | [[Category:Text and Number Identifiers]] |
Revision as of 23:44, 2 December 2005
Returns 1 if the Nth bit in number A is turned on, otherwise 0 will be returned.
$isbit(A,N)
In the table below is information about bits, values and their binary representation
Binary | Value | Bit |
00001 | 1 | 1 |
00010 | 2 | 2 |
00100 | 4 | 3 |
01000 | 8 | 4 |
01101 | 13 | 1,3 and 4 |
10000 | 16 | 5 |
As you can see by the table above in the highlighted cells, if you have the value 13 it requires the 1st, 3rd and 4th bit to be turned on. How we figure this out, is we take the 1st, 3rd and 4th bit and add them together 1+4+8 and this gives a value of 13. Using the bits values 1,2,4,8 and 16 in this example it is impossible to get to 13 other than using 1,4 and 8. This can be seen in the example below.
Examples
var %i = 1 while (%i <= 13) { echo -ag %i bit is $iif($isbit(13,%i),On,Off) inc %i }