Version: alpha
FUNCTION | |
---|---|
bit.tobit() | normalize number to the numeric range for bit operations |
bit.tohex() | convert number to a hex string |
bit.bnot() | bitwise not |
bit.bor() | bitwise or |
bit.band() | bitwise and |
bit.bxor() | bitwise xor |
bit.lshift() | bitwise logical left-shift |
bit.rshift() | bitwise logical right-shift |
bit.arshift() | bitwise arithmetic right-shift |
bit.rol() | bitwise left rotation |
bit.ror() | bitwise right rotation |
bit.bswap() | bitwise swap |
bit.tobit(x)
PARAMETERS
x |
number to normalize |
RETURNS
y |
normalized number |
EXAMPLES
print(0xffffffff) --> 4294967295 (*) print(bit.tobit(0xffffffff)) --> -1 printx(bit.tobit(0xffffffff)) --> 0xffffffff print(bit.tobit(0xffffffff + 1)) --> 0 print(bit.tobit(2^40 + 1234)) --> 1234
bit.tohex(x,n)
PARAMETERS
x |
number to convert |
n |
number of hex digits to return |
RETURNS
s |
hexadecimal string |
EXAMPLES
print(bit.tohex(1)) --> 00000001 print(bit.tohex(-1)) --> ffffffff print(bit.tohex(0xffffffff)) --> ffffffff print(bit.tohex(-1, -8)) --> FFFFFFFF print(bit.tohex(0x21, 4)) --> 0021 print(bit.tohex(0x87654321, 4)) --> 4321
bit.bnot(x)
PARAMETERS
x |
number |
RETURNS
y |
bitwise not of number x |
EXAMPLES
print(bit.bnot(0)) --> -1 printx(bit.bnot(0)) --> 0xffffffff print(bit.bnot(-1)) --> 0 print(bit.bnot(0xffffffff)) --> 0 printx(bit.bnot(0x12345678)) --> 0xedcba987
bit.bor(x1,[x2...])
PARAMETERS
x1 |
number |
[x2...] |
number(s) |
RETURNS
y |
bitwise or of the provided arguments |
EXAMPLES
print(bit.bor(1, 2, 4, 8)) --> 15
bit.band(x1,[x2...])
PARAMETERS
x1 |
number |
[x2...] |
number(s) |
RETURNS
y |
bitwise and of the provided arguments |
EXAMPLES
printx(bit.band(0x12345678, 0xff)) --> 0x00000078
bit.bxor(x1,[x2...])
PARAMETERS
x1 |
number |
[x2...] |
number(s) |
RETURNS
y |
bitwise xor of the provided arguments |
EXAMPLES
printx(bit.bxor(0xa5a5f0f0, 0xaa55ff00)) --> 0x0ff00ff0
bit.lshift(x,n)
PARAMETERS
x |
number |
n |
number of bits |
RETURNS
y |
bitwise logical left-shifted number |
EXAMPLES
print(bit.lshift(1, 0)) --> 1 print(bit.lshift(1, 8)) --> 256 print(bit.lshift(1, 40)) --> 256 printx(bit.lshift(0x87654321, 12)) --> 0x54321000
bit.rshift(x,n)
PARAMETERS
x |
number |
n |
number of bits |
RETURNS
y |
bitwise logical right-shifted number |
EXAMPLES
print(bit.rshift(256, 8)) --> 1 print(bit.rshift(-256, 8)) --> 16777215 printx(bit.rshift(0x87654321, 12)) --> 0x00087654
bit.arshift(x,n)
PARAMETERS
x |
number |
n |
number of bits |
RETURNS
y |
bitwise arithmetic right-shifted number |
EXAMPLES
print(bit.arshift(256, 8)) --> 1 print(bit.arshift(-256, 8)) --> -1 printx(bit.arshift(0x87654321, 12)) --> 0xfff87654
bit.rol(x,n)
PARAMETERS
x |
number |
n |
number of bits |
RETURNS
y |
bitwise left-rotated number |
EXAMPLES
printx(bit.rol(0x12345678, 12)) --> 0x45678123
bit.ror(x,n)
PARAMETERS
x |
number |
n |
number of bits |
RETURNS
y |
bitwise right-rotated number |
EXAMPLES
printx(bit.ror(0x12345678, 12)) --> 0x67812345
bit.bswap(x)
PARAMETERS
x |
number |
RETURNS
y |
bitwise swapped number |
EXAMPLES
printx(bit.bswap(0x12345678)) --> 0x78563412 printx(bit.bswap(0x78563412)) --> 0x12345678