青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 9,comments - 14,trackbacks - 0
--[[
Description:
    FileName:bit.lua
    This module provides a selection of bitwise operations.
History:
    Initial version created by  陣雨 2005-11-10.
Notes:
  ....
]]
--[[{2147483648,1073741824,536870912,268435456,134217728,67108864,33554432,16777216,
        8388608,4194304,2097152,1048576,524288,262144,131072,65536,
        32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8,4,2,1}
        ]]


bit={data32={}}
for i=1,32 do
    bit.data32[i]=2^(32-i)
end

function bit:d2b(arg)
    local   tr={}
    for i=1,32 do
        if arg >= self.data32[i] then
        tr[i]=1
        arg=arg-self.data32[i]
        else
        tr[i]=0
        end
    end
    return   tr
end   --bit:d2b

function    bit:b2d(arg)
    local   nr=0
    for i=1,32 do
        if arg[i] ==1 then
        nr=nr+2^(32-i)
        end
    end
    return  nr
end   --bit:b2d

function    bit:_xor(a,b)
    local   op1=self:d2b(a)
    local   op2=self:d2b(b)
    local   r={}

    for i=1,32 do
        if op1[i]==op2[i] then
            r[i]=0
        else
            r[i]=1
        end
    end
    return  self:b2d(r)
end --bit:xor

function    bit:_and(a,b)
    local   op1=self:d2b(a)
    local   op2=self:d2b(b)
    local   r={}
    
    for i=1,32 do
        if op1[i]==1 and op2[i]==1  then
            r[i]=1
        else
            r[i]=0
        end
    end
    return  self:b2d(r)
    
end --bit:_and

function    bit:_or(a,b)
    local   op1=self:d2b(a)
    local   op2=self:d2b(b)
    local   r={}
    
    for i=1,32 do
        if  op1[i]==1 or   op2[i]==1   then
            r[i]=1
        else
            r[i]=0
        end
    end
    return  self:b2d(r)
end --bit:_or

function    bit:_not(a)
    local   op1=self:d2b(a)
    local   r={}

    for i=1,32 do
        if  op1[i]==1   then
            r[i]=0
        else
            r[i]=1
        end
    end
    return  self:b2d(r)
end --bit:_not

function    bit:_rshift(a,n)
    local   op1=self:d2b(a)
    local   r=self:d2b(0)
    
    if n < 32 and n > 0 then
        for i=1,n do
            for i=31,1,-1 do
                op1[i+1]=op1[i]
            end
            op1[1]=0
        end
    r=op1
    end
    return  self:b2d(r)
end --bit:_rshift

function    bit:_lshift(a,n)
    local   op1=self:d2b(a)
    local   r=self:d2b(0)
    
    if n < 32 and n > 0 then
        for i=1,n   do
            for i=1,31 do
                op1[i]=op1[i+1]
            end
            op1[32]=0
        end
    r=op1
    end
    return  self:b2d(r)
end --bit:_lshift


function    bit:print(ta)
    local   sr=""
    for i=1,32 do
        sr=sr..ta[i]
    end
    print(sr)
end

bs=bit:d2b(7)
bit:print(bs)                          
-->00000000000000000000000000000111
bit:print(bit:d2b(bit:_not(7)))         
-->11111111111111111111111111111000
bit:print(bit:d2b(bit:_rshift(7,2)))    
-->00000000000000000000000000000001
bit:print(bit:d2b(bit:_lshift(7,2)))    
-->00000000000000000000000000011100
print(bit:b2d(bs))                      -->     7
print(bit:_xor(7,2))                    -->     5
print(bit:_and(7,4))                    -->     4
print(bit:_or(5,2))                     -->     7


--end of bit.lua
posted on 2005-11-11 03:08 陣雨 閱讀(15240) 評論(7)  編輯 收藏 引用 所屬分類: Lua Programming

FeedBack:
# re: Lua實現的 位運算 模塊
2005-11-11 03:25 | 陣雨
這個bit處理模塊比起由C庫提供的在效率上會打些折扣,但它是由
純Lua實現的哦 ^_^  回復  更多評論
  
# re: Lua實現的 位運算 模塊
2008-08-28 11:57 | 天堂的隔壁
如果這個數字大于7fffffff的話,d2b會出問題
也就是說負數的時候,  回復  更多評論
  
# re: Lua實現的 位運算 模塊[未登錄]
2009-05-20 23:29 | haha
bit:_rshift和bit:_lshift 在n=0時,處理不正確,應該增加下列語句:
if n == 0 then
return a
end  回復  更多評論
  
# re: Lua實現的 位運算 模塊
2009-10-26 10:45 | RexGene
效率太慢,用其他算數的方法取代位運算效率還比這個高  回復  更多評論
  
# re: Lua實現的 位運算 模塊
2013-11-27 02:40 | wapeter
您好陣雨,謝謝您的代碼!
我把你的代碼重構了一次, 修改了部分左右位移的速度問題
還有一些測試用例, 互相參考:

http://hi.baidu.com/wapeter/item/80da1a3f342c98b9633aff86


  回復  更多評論
  
# re: Lua實現的 位運算 模塊
2014-02-17 10:54 | 你好
lua的5.2以后版本提供了相關的功能~  回復  更多評論
  

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一级片一区| 国产精品美女视频网站| 亚洲黄色尤物视频| 亚洲欧洲av一区二区三区久久| 一本一本大道香蕉久在线精品| 亚洲国产成人av| 亚洲伦伦在线| 亚洲一品av免费观看| 欧美一区二区三区四区夜夜大片| 久久精品国产久精国产一老狼| 亚洲精品系列| 亚洲综合视频在线| 亚洲综合视频一区| 欧美影院成年免费版| 久久艳片www.17c.com| 欧美高清在线视频观看不卡| 欧美日韩一区二区三区在线看 | 亚洲美女视频在线免费观看| 亚洲无限av看| 久久人91精品久久久久久不卡| 欧美激情精品久久久久| 国产精品国产三级国产专播精品人 | 亚洲狼人综合| 欧美在线关看| 欧美日韩一区二区在线播放| 国产在线国偷精品产拍免费yy| 亚洲欧洲综合另类| 久久精品国内一区二区三区| 亚洲日本欧美日韩高观看| 久久成人国产| 国产精品国产三级国产专区53| 一区二区三区在线视频免费观看| 国产精品99久久久久久久久久久久 | 欧美日韩高清区| 国内成人在线| 亚洲欧美国产日韩天堂区| 牛牛影视久久网| 亚洲欧美另类在线| 欧美日韩福利| 亚洲黄一区二区三区| 久久精品男女| 亚洲作爱视频| 欧美日韩不卡合集视频| 伊人久久大香线蕉av超碰演员| 亚洲综合色噜噜狠狠| 亚洲日本国产| 欧美激情精品久久久久久变态 | 欧美亚洲视频在线观看| 亚洲精品乱码久久久久久黑人 | 国产色婷婷国产综合在线理论片a| 日韩系列在线| 亚洲夫妻自拍| 欧美成ee人免费视频| 精品动漫av| 久久久久网址| 欧美一级片一区| 国产麻豆9l精品三级站| 国产精品日日做人人爱| 欧美日韩国产欧| 亚洲日本成人网| 亚洲国产aⅴ天堂久久| 美女性感视频久久久| 一区三区视频| 米奇777超碰欧美日韩亚洲| 久久精品在线| 亚洲第一网站| 亚洲电影免费观看高清完整版| 猫咪成人在线观看| 亚洲欧洲综合| 日韩一区二区免费高清| 欧美视频在线观看一区| 亚洲曰本av电影| 亚洲一区二区在线免费观看| 国产精品丝袜91| 久久九九精品99国产精品| 久久激情五月婷婷| 亚洲黄色小视频| 9国产精品视频| 国产人成一区二区三区影院| 久久免费黄色| 欧美精品在线网站| 亚洲欧美日本日韩| 久久久久久久久综合| 99re66热这里只有精品3直播| 在线中文字幕不卡| 国产一区亚洲一区| 亚洲国产另类精品专区| 欧美日韩国产123| 欧美一进一出视频| 麻豆成人精品| 午夜精品在线观看| 久久人人97超碰精品888| 亚洲精品视频在线| 亚洲一区免费视频| 亚洲经典三级| 亚洲免费在线观看| 亚洲激情图片小说视频| 亚洲天堂av高清| 亚洲国产高清一区二区三区| 一区二区三区蜜桃网| 伊人成人开心激情综合网| 日韩一区二区精品视频| 国产在线观看一区| 99视频超级精品| 黑人巨大精品欧美一区二区| 日韩视频一区二区在线观看| 激情六月婷婷久久| 一区二区三区成人| 亚洲黄色免费| 久久成人免费日本黄色| 亚洲一区二区在| 久久综合久久综合久久| 亚洲欧美精品suv| 欧美成人激情在线| 久久全国免费视频| 国产精品日韩欧美大师| 亚洲另类春色国产| 亚洲激情综合| 久久这里只有精品视频首页| 欧美中文字幕视频| 国产精品国产三级国产普通话99 | 亚洲免费观看| 亚洲第一精品电影| 午夜性色一区二区三区免费视频| 日韩一区二区免费看| 久久亚洲综合网| 久久国产高清| 国产精品素人视频| 99国产精品久久| 99re这里只有精品6| 久久香蕉国产线看观看av| 久久精品30| 国产一区导航| 午夜精品一区二区三区电影天堂| 亚洲天堂av高清| 欧美激情在线免费观看| 亚洲第一精品夜夜躁人人躁| 亚洲国产精品久久久久秋霞影院| 性做久久久久久久久| 欧美制服丝袜| 国产一区二区三区高清| 欧美一区二区三区四区在线观看 | 亚洲作爱视频| 欧美日本在线视频| 99视频+国产日韩欧美| 亚洲欧美日韩在线综合| 国产精品国产| 亚洲欧美精品| 久久午夜精品一区二区| 在线欧美日韩国产| 免费观看成人www动漫视频| 亚洲成人在线视频播放| 亚洲精品视频在线| 国产精品国产三级国产普通话三级| 亚洲图片欧洲图片av| 久久精品久久99精品久久| 娇妻被交换粗又大又硬视频欧美| 久久综合狠狠综合久久综合88| 亚洲国产精品成人综合| 亚洲视频精选在线| 国产欧美日韩亚州综合| 久久精品中文字幕一区二区三区 | 亚洲欧美激情在线视频| 国产一区二区黄| 欧美**人妖| 亚洲一区国产视频| 久热精品视频在线观看一区| 亚洲精品美女久久久久| 国产精品xxxav免费视频| 欧美一区二区视频在线| 亚洲第一黄色| 欧美亚洲日本国产| 亚洲欧洲日产国产综合网| 国产精品va在线| 久久亚洲精品一区二区| 亚洲美女在线观看| 久久久免费观看视频| 一本久久知道综合久久| 国产一区二区三区久久久久久久久| 免费观看不卡av| 午夜精品视频在线| 在线精品视频一区二区| 欧美日韩18| 久久亚洲国产精品日日av夜夜| 在线亚洲免费| 欧美激情欧美激情在线五月| 欧美一级午夜免费电影| 日韩视频在线免费| 狠色狠色综合久久| 国产精品视屏| 欧美视频二区36p| 久久综合伊人77777麻豆| 亚洲在线黄色| 亚洲毛片播放| 亚洲国内高清视频| 免费观看成人鲁鲁鲁鲁鲁视频| 午夜亚洲激情| 亚洲欧美激情视频| 99精品国产热久久91蜜凸| 永久免费视频成人|