首页 > 代码库 > lua 按拉分析与合成
lua 按拉分析与合成
-- 将数值分解成bytes_tablelocal function decompose_byte(data) if not data then return data end local tb = {} if data =http://www.mamicode.com/= 0 then table.insert(tb, 0) return tb end local idx = 1 while data > 0 do table.insert(tb, math.mod(data, 2)) data = math.floor(data/2) end return tb;end-- 按位合成一个数值local function synthesize_byte(bytes_table) local data = http://www.mamicode.com/0; for i,v in ipairs(bytes_table) do data = data + math.pow(2, i - 1) * bytes_table[i] end return dataend-- 使用方法local function show_bytes(t) local str = "" for i,v in ipairs(t) do str = tostring(v) .. str; end print(str)endlocal tb = decompose_byte(11)show_bytes(tb);print(synthesize_byte(tb))local str = string.format("%c%c", 255, 98)print(str, #str)tb = decompose_byte(string.byte(str, 1))show_bytes(tb)print(synthesize_byte(tb))tb = decompose_byte(string.byte(str, 2))show_bytes(tb)print(synthesize_byte(tb))
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。