flat assembler
Message board for the users of flat assembler.
Index
> Main > 32- and 64bit interopability |
Author |
|
kohlrak 12 Mar 2010, 21:15
The simple explanation is, 32bit code is run in a sort of compatibility mode. Some instructions (pushd for example) don't work in 64bit mode. Check the fasm manual for the details of removed instructions. The main difference is that now addresses must be 64bit instead of 32bit, and you have more registers to play with. Also, register calling convention is becoming popular again and some are preserved in the ABI.
|
|||
12 Mar 2010, 21:15 |
|
baldr 12 Mar 2010, 21:55
godomega,
Intel/AMD manuals may be not an easy reading, but they're thorough. 64-bit instructions look like their 32-bit counterparts with various REX prefixes, and in legacy/compatibility modes they can't be encoded (REX prefix becomes inc/dec opcode). |
|||
12 Mar 2010, 21:55 |
|
a115433 12 Mar 2010, 22:57
uhmmm
64 bit mode is also as fucked up as the rest of architecture. you just have to learn it. it will be easier than learning protected mode, since its only extension, and many things work like before but are extended. |
|||
12 Mar 2010, 22:57 |
|
godomega 12 Mar 2010, 23:06
Ok thanks baldr that was the information I needed to hear .
|
|||
12 Mar 2010, 23:06 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.