Lua 5.2新的二进制库问题

时间:2011-02-06 05:38:21

标签: binary lua

好的,所以我决定今天试用Lua 5.2。 我真的对名为 bit 的新二进制库感兴趣。与我自己制作的功能相比,有些功能可以快速运行,主要是因为它们已经在Lua的C端实现了。采用二进制XOR函数,它比我的Lua XOR实现快34​​倍。

所以,我的困境是: 我认为二进制函数中已经存在一个错误

print(bit.bnot(0)) --> 4294967295

这是正确的,因为4294967295是二进制的11111111 11111111 11111111 11111111

然而,

print(bit.band(4294967295, 65535)) --> 0

哪个错了,或至少我觉得应该是。 二进制65535是11111111 11111111。 当我在上述情况下使用 bit.band 时,不应该返回65535吗?

我正在使用来自here

的Lua 5.2.0-work2预编译二进制文件

1 个答案:

答案 0 :(得分:1)

我根本没有看过Lua 5.2版本,但如果你的主要兴趣是二进制操作,那么Lua 5.1 here有一个BitOp模块,它与LuaJit提供的本机实现兼容。