change default byte order in bit_converter to BE and fix byte manipulation functions
This commit is contained in:
parent
aad0ea84eb
commit
9490d1f7ea
@ -39,7 +39,7 @@ local toLEConvertors =
|
||||
BE = function(bytes) return reverse(bytes) end
|
||||
}
|
||||
|
||||
bit_converter.default_order = "LE"
|
||||
bit_converter.default_order = "BE"
|
||||
|
||||
local function fromLE(bytes, orderTo)
|
||||
if orderTo then
|
||||
@ -170,17 +170,17 @@ end
|
||||
|
||||
local function uint32ToBytes(int, order)
|
||||
return fromLE({
|
||||
maskHighBytes(bit.rshift(int, 24)),
|
||||
maskHighBytes(bit.rshift(int, 16)),
|
||||
maskHighBytes(int),
|
||||
maskHighBytes(bit.rshift(int, 8)),
|
||||
maskHighBytes(int)
|
||||
maskHighBytes(bit.rshift(int, 16)),
|
||||
maskHighBytes(bit.rshift(int, 24))
|
||||
}, order)
|
||||
end
|
||||
|
||||
local function uint16ToBytes(int, order)
|
||||
return fromLE({
|
||||
maskHighBytes(bit.rshift(int, 8)),
|
||||
maskHighBytes(int)
|
||||
maskHighBytes(int),
|
||||
maskHighBytes(bit.rshift(int, 8))
|
||||
}, order)
|
||||
end
|
||||
|
||||
@ -206,14 +206,14 @@ function bit_converter.int64_to_bytes(int, order)
|
||||
end
|
||||
|
||||
return fromLE({
|
||||
maskHighBytes(bit.rshift(int, 56)),
|
||||
maskHighBytes(bit.rshift(int, 48)),
|
||||
maskHighBytes(bit.rshift(int, 40)),
|
||||
maskHighBytes(bit.rshift(int, 32)),
|
||||
maskHighBytes(bit.rshift(int, 24)),
|
||||
maskHighBytes(bit.rshift(int, 16)),
|
||||
maskHighBytes(int),
|
||||
maskHighBytes(bit.rshift(int, 8)),
|
||||
maskHighBytes(int)
|
||||
maskHighBytes(bit.rshift(int, 16)),
|
||||
maskHighBytes(bit.rshift(int, 24)),
|
||||
maskHighBytes(bit.rshift(int, 32)),
|
||||
maskHighBytes(bit.rshift(int, 40)),
|
||||
maskHighBytes(bit.rshift(int, 48)),
|
||||
maskHighBytes(bit.rshift(int, 56))
|
||||
}, order)
|
||||
end
|
||||
|
||||
@ -298,9 +298,10 @@ function bit_converter.bytes_to_uint32(bytes, order)
|
||||
bit.bor(
|
||||
bit.bor(
|
||||
bit.bor(
|
||||
bit.lshift(bytes[1], 24),
|
||||
bit.lshift(bytes[2], 16)),
|
||||
bit.lshift(bytes[3], 8)),bytes[4])
|
||||
bytes[1],
|
||||
bit.lshift(bytes[2], 8)),
|
||||
bit.lshift(bytes[3], 16)),
|
||||
bit.lshift(bytes[4], 24))
|
||||
end
|
||||
|
||||
function bit_converter.bytes_to_uint16(bytes, order)
|
||||
@ -312,8 +313,8 @@ function bit_converter.bytes_to_uint16(bytes, order)
|
||||
|
||||
return
|
||||
bit.bor(
|
||||
bit.lshift(bytes[1], 8),
|
||||
bytes[2], 0)
|
||||
bit.lshift(bytes[2], 8),
|
||||
bytes[1], 0)
|
||||
end
|
||||
|
||||
function bit_converter.bytes_to_int64(bytes, order)
|
||||
@ -331,13 +332,13 @@ function bit_converter.bytes_to_int64(bytes, order)
|
||||
bit.bor(
|
||||
bit.bor(
|
||||
bit.bor(
|
||||
bit.lshift(bytes[1], 56),
|
||||
bit.lshift(bytes[2], 48)),
|
||||
bit.lshift(bytes[3], 40)),
|
||||
bit.lshift(bytes[4], 32)),
|
||||
bit.lshift(bytes[5], 24)),
|
||||
bit.lshift(bit.band(bytes[6], 0xFF), 16)),
|
||||
bit.lshift(bit.band(bytes[7], 0xFF), 8)),bit.band(bytes[8], 0xFF))
|
||||
bit.lshift(bytes[8], 56),
|
||||
bit.lshift(bytes[7], 48)),
|
||||
bit.lshift(bytes[6], 40)),
|
||||
bit.lshift(bytes[5], 32)),
|
||||
bit.lshift(bytes[4], 24)),
|
||||
bit.lshift(bit.band(bytes[3], 0xFF), 16)),
|
||||
bit.lshift(bit.band(bytes[2], 0xFF), 8)),bit.band(bytes[1], 0xFF))
|
||||
end
|
||||
|
||||
function bit_converter.bytes_to_int32(bytes, order)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user