PICO-8 Wiki
Advertisement
rotl( num, bits )
Rotates the bits of a number to the left.
num
The number.

bits
The number of bits to rotate.

The rotl() function takes a number and a bit count, and returns the result of rotating the bits of the number to the left by that count.

Numbers in PICO-8 are stored using a 32-bit fixed point format, with 16 bits for the integer portion, 16 bits for the fractional portion, and a two's complement representation for negative and positive values. Bit rotating uses the entire number representation. (See examples below.)

See rotr() to rotate bits to the right.

Examples

--  8 = 0b00001000 binary
-- 64 = 0b01000000 binary
print(rotl(8, 3))  -- 64

-- 0.125 = 0b0000.0010 binary
-- 1.000 = 0b0001.0000 binary
print(rotl(0.125, 3))  -- 1

-- -4096.0000 = 0b1111000000000000.0000000000000000 binary (two's complement)
--                     rotate <-- by 12 bits
--     0.0586 = 0b0000000000000000.0000111100000000 binary
print(rotl(-4096,12))  -- 0.0586

See also

Advertisement