Difference between revisions of "Lua:wordToByteTable"

From Cheat Engine
Jump to navigation Jump to search
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''function''' wordToByteTable(''Number'')
+
[[Category:Lua]]
 +
'''function''' wordToByteTable(''Number'') ''':''' table
 +
 
 +
Converts a WORD (2 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 WORD (2 bytes) only the lower portion of the number will be used.
 +
 
 +
  i.e.: 0xFFFF00 : 0xFF00
 +
          2 1 0      1 0
  
Converts a WORD (2 bytes) to a byte table.
 
  
 
===Function Parameters===
 
===Function Parameters===
Line 13: Line 28:
 
|The number to convert to a byte table
 
|The number to convert to a byte table
 
|}
 
|}
 
 
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 word (2 bytes) only the lower porsion of the number will be used.
 
 
i.e.: 0xFFFF00 : 0xFF00
 
  
  
Line 31: Line 34:
 
Code:
 
Code:
 
   local bt = wordToByteTable(0xFFFF)
 
   local bt = wordToByteTable(0xFFFF)
 +
                            --1 0
 
   writeBytes('00123ABC', bt)
 
   writeBytes('00123ABC', bt)
  
  
 
Code:
 
Code:
   local bt = wordToByteTable(8)
+
   local bt = wordToByteTable(10)
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 08
+
   0 0A
   2 00  
+
   1 00  
  
  
 
Code:
 
Code:
   local bt = wordToByteTable(8.9)
+
   local bt = wordToByteTable(10.9)
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 08
+
   0 0A
   2 00  
+
   1 00  
  
  
 
Code:
 
Code:
 
   local bt = wordToByteTable(0xFFFF00)
 
   local bt = wordToByteTable(0xFFFF00)
 +
                            --2 1 0
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 00  
+
   0 00  
   2 FF  
+
   1 FF  
  
  
== 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]]
 
* [[dwordToByteTable]]
 
* [[qwordToByteTable]]
 
* [[floatToByteTable]]
 
* [[doubleToByteTable]]
 
* [[stringToByteTable]]
 
* [[wideStringToByteTable]]
 
* [[byteTableToWord]]
 
* [[byteTableToDword]]
 
* [[byteTableToQword]]
 
* [[byteTableToFloat]]
 
* [[byteTableToDouble]]
 
* [[byteTableToString]]
 
* [[byteTableToWideString]]
 

Latest revision as of 00:06, 25 January 2018

function wordToByteTable(Number) : table

Converts a WORD (2 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 WORD (2 bytes) only the lower portion of the number will be used.

 i.e.: 0xFFFF00 : 0xFF00
         2 1 0      1 0


Function Parameters[edit]

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


Examples[edit]

Code:

 local bt = wordToByteTable(0xFFFF)
                            --1 0
 writeBytes('00123ABC', bt)


Code:

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

Output:

 0 0A 
 1 00 


Code:

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

Output:

 0 0A 
 1 00 


Code:

 local bt = wordToByteTable(0xFFFF00)
                            --2 1 0
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 00 
 1 FF 


See also[edit]

Related Functions[edit]