Lua:qwordToByteTable

From Cheat Engine
Jump to navigation Jump to search

function qwordToByteTable(Number)

Converts a QWORD (8 bytes) to a byte table, interpreting it as an integer.


Note: If the number is a float only the integer no greater than or no less than the given value will be used.

Same as value from 'math.floor'.

 i.e.: 8.1 : 8, 8.9 : 8, -8.1 : -8, -8.9 : -8


Note: If the number is larger than a QWORD (8 bytes) only the lower portion of the number will be used.

 i.e.: 0xFFFFFFFFFFFFFFFF00 : 0xFFFFFFFFFFFFFF00
         8 7 6 5 4 3 2 1 0      7 6 5 4 3 2 1 0

Function Parameters

Parameter Type Description
Number number The number to convert to a byte table


Examples

 local bt = qwordToByteTable(0xFFFFFFFFFFFFFFFF)
                             --7 6 5 4 3 2 1 0
 writeBytes('00123ABC', bt)


Code:

 local bt = qwordToByteTable(10)
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 0A 
 1 00 
 2 00 
 3 00 
 4 00 
 5 00 
 6 00 
 7 00 


Code:

 local bt = qwordToByteTable(10.9)
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 0A 
 1 00 
 2 00 
 3 00 
 4 00 
 5 00 
 6 00 
 7 00 


Code:

 local bt = qwordToByteTable(0xFFFFFFFFFFFFFFFFFF00)
                             --8 7 6 5 4 4 3 2 1 0
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 00 
 1 FF 
 2 FF 
 3 FF 
 4 FF 
 5 FF 
 6 FF 
 7 FF 


See also

Related Functions