2016년 2월 12일 금요일

bit opration(비트연산) in corona sdk, Lua

bit 연산 때문에 여기저기를 찾아봤습니다.

Lua

Lua 의 낮은 버전에서는 원칙적으로 지원하지 않습니다. 5.2부터 지원한다고 합니다.
http://lua-users.org/wiki/BitwiseOperators
http://www.lua.org/manual/5.2/manual.html#6.7 <-여기 참고 하면됩니다.
> print(bit32.bor(3,1))
3
> print(bit32.band(3,1))
1
5.1이하 버전에서 사용하려면 라이브러리를 사용하면 됩니다.

Corona SDK

Corona SDK의 경우 Lua 5.1 기반으로 되어있기 때문에 지원하지 않습니다.
따라서 다른 라이브러리를 사용하면되는데 Corona SDK에서 사용하려면 native 언어로 된것은 일반 사용자가 사용이 안되므로 Lua 언어로된 library를 사용해야합니다.

적절한것은 아래 나온 링크들입니다.

Pure Lua implementations:

그중 [bit.numberlua] 에 사용해 보았습니다.
https://github.com/davidm/lua-bit-numberlua/ 여기에서 받을 수 있습니다.
https://github.com/davidm/lua-bit-numberlua/blob/master/lmod/bit/numberlua.lua 여기에 있는 lua 파일을 다운로드 받아서 자신의 project에 넣고 다음과 같이 사용하면 됩니다.

local bit = require 'numberlua'
print(bit.bor(1,2,3))


댓글 없음:

댓글 쓰기