BitOp

# Lua Bit Operations Module

Lua BitOp is a C extension module for Lua 5.1/5.2 which adds bitwise operations on numbers.

Lua BitOp is Copyright © 2008-2025 Mike Pall. Lua BitOp is free software, released under the » MIT license (same license as the Lua core).

## Features

- Supported functions: `bit.tobit, bit.tohex, bit.bnot, bit.band, bit.bor, bit.bxor, bit.lshift, bit.rshift, bit.arshift, bit.rol, bit.ror, bit.bswap`
- Consistent semantics across 16, 32 and 64 bit platforms.
- Supports different lua_Number types: either IEEE 754 doubles, int32_t or int64_t.
- Runs on Linux, *BSD, Mac OS X, Windows and probably anything else you can find.
- Simple installation on all systems. No bulky configure scripts. Embedded-systems-friendly.
- Internal self-test on startup to detect miscompiles. Includes a comprehensive test and benchmark suite.
- Compatible with the built-in bitwise operations in » LuaJIT 2.0+.
- It's as fast as you can get with the standard Lua/C API.

## More ...

Please click on one of the links in the navigation bar to your left to learn more.

Click on the Logo in the upper left corner to visit the Lua BitOp project page on the web. All other links to online resources are marked with a '»'.

Copyright © 2008-2025 · Contact