Difference between revisions of "Endian"
(Created page with 'I can't seem to figure out how to make cheatengine switch from little to big endian virsa versa.. no page for it here on wiki..') |
|||
Line 1: | Line 1: | ||
− | + | Little Endian: | |
+ | Values are written with the least significat bit first followed by more significant bytes | ||
+ | |||
+ | Big Endian: | ||
+ | The most significant byte is written first, followed by lesser significant bytes | ||
+ | |||
+ | |||
+ | Example with the value 300 (0x0000012c): | ||
+ | |||
+ | little endian: 0x2c 0x01 0x00 0x00 | ||
+ | |||
+ | big endian: 0x00 0x00 0x01 0x2c | ||
+ | |||
+ | |||
+ | x86 uses the little endian way of notation, the only times you can encounter it on a computer is when using an emulator that doesn't the swap automatically (Some emulators do the conversion of big endian to little endian internally to speed up emulation) | ||
+ | |||
+ | |||
+ | |||
+ | == Cheat Engine and Big Endian == | ||
+ | Cheat engine does not current support big endian by default, but it is possible to write a custom scan script that converts the value to be checked to little endian before it is compared against user input | ||
+ | |||
+ | Another method that might be easier, would be to use 1 byte scan values only |
Revision as of 20:36, 17 September 2009
Little Endian: Values are written with the least significat bit first followed by more significant bytes
Big Endian: The most significant byte is written first, followed by lesser significant bytes
Example with the value 300 (0x0000012c):
little endian: 0x2c 0x01 0x00 0x00
big endian: 0x00 0x00 0x01 0x2c
x86 uses the little endian way of notation, the only times you can encounter it on a computer is when using an emulator that doesn't the swap automatically (Some emulators do the conversion of big endian to little endian internally to speed up emulation)
Cheat Engine and Big Endian
Cheat engine does not current support big endian by default, but it is possible to write a custom scan script that converts the value to be checked to little endian before it is compared against user input
Another method that might be easier, would be to use 1 byte scan values only