2011-02-06 5 views
1

さて、私は今日ルア5.2を試してみることにしました。 私は本当にビットと呼ばれる新しいバイナリライブラリに興味がありました。主にLuaのC側で実装されているため、関数の中には、自分でできるものと比べて、稲妻が高速に実行されるものがあります。バイナリXOR関数を使用すると、XORのLua実装よりも34倍高速に実行されます。Lua 5.2新しいバイナリライブラリの問題

だから、私のジレンマがある: 私は4294967295しかし、バイナリ

で11111111 11111111 11111111 11111111、

あるので、正しいですすでに

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

バイナリ機能にバグがあると思います

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

どちらが間違っているか、少なくともそれはすべきだと思います。 バイナリで65535は11111111 11111111です。 私がbit.bandを使用すると上記の状況では返されませんか?あなたの主な関心は、バイナリ操作である場合

私は全くのLua 5.2のリリースでは見ていないhere

+0

これはLua 5.2.2ではなく、Lua 5.2.0-work2 –

+1

です.Lua 5.2 alphaを試してみてください。http://www.lua.org/work/ – lhf

+0

@Alexanderで入手できます。さて、それは私の問題を解決しません。 @lhf;私はかなり、私はそのバージョンを使用していると確信しています、ちょうどプリコンパイルされた配布 – Jason

答えて

1

からのLua 5.2.0-WORK2コンパイル済みのバイナリを使用していますが、、のためBitOpモジュールがありますLua 5.1 hereは、LuaJitが提供するネイティブ実装とソース互換性があります。