Difference between revisions of "Lua:qwordToByteTable"

From Cheat Engine
Jump to navigation Jump to search
Line 87: Line 87:
  
  
== See also ==
+
{{LuaSeeAlso}}
* [[Lua]]
 
* [[Help_File:Script engine|Script engine]]
 
  
 
=== Related Functions ===
 
=== Related Functions ===
* [[readBytes]]
+
{{ReadWriteMemory}}
* [[readInteger]]
 
* [[readQword]]
 
* [[readPointer]]
 
* [[readFloat]]
 
* [[readDouble]]
 
* [[readString]]
 
* [[writeBytes]]
 
* [[writeInteger]]
 
* [[writeQword]]
 
* [[writeFloat]]
 
* [[writeDouble]]
 
* [[writeString]]
 
* [[readBytesLocal]]
 
* [[readIntegerLocal]]
 
* [[readQwordLocal]]
 
* [[readPointerLocal]]
 
* [[readFloatLocal]]
 
* [[readDoubleLocal]]
 
* [[readStringLocal]]
 
* [[writeBytesLocal]]
 
* [[writeIntegerLocal]]
 
* [[writeQwordLocal]]
 
* [[writeFloatLocal]]
 
* [[writeDoubleLocal]]
 
* [[writeStringLocal]]
 
* [[wordToByteTable]]
 
* [[dwordToByteTable]]
 
* [[floatToByteTable]]
 
* [[doubleToByteTable]]
 
* [[stringToByteTable]]
 
* [[wideStringToByteTable]]
 
* [[byteTableToWord]]
 
* [[byteTableToDword]]
 
* [[byteTableToQword]]
 
* [[byteTableToFloat]]
 
* [[byteTableToDouble]]
 
* [[byteTableToString]]
 
* [[byteTableToWideString]]
 

Revision as of 05:25, 4 July 2017

function qwordToByteTable(Number) : table

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