你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

Lua 位操作库 bit.so编译安装

2021/12/14 22:06:53

Lua的算术位操作,如与,或,非等,需要依赖一个c扩展模块:Lua BitOp

1,下载源码:http://bitop.luajit.org/download.html

2,解压及编译:make

编译失败,缺少一个宏定义,查看源码后,该宏应该是定义Lua的number类型为哪种类型,可以为double, 或int,或为float。我这里在Makefile里添加-DLUA_NUMBER_DOUBLE进行编译。

3,拷贝bit.so

make install 完成,库已经拷贝到默认库目录下:

 

4,例子

 

#!/usr/local/bin/lua

local bitop = require("bit")

print(bitop.tohex(10, -2))
print(bitop.tohex(10, -6))


print(bitop.tohex(1))
print(bitop.tohex(-1))             
print(bitop.tohex(0xffffffff))
print(bitop.tohex(-1, -8))    
print(bitop.tohex(0x21, 4))
print(bitop.tohex(0x87654321, 4))