J'ai effectué la programmation de ARM Assembly et j'aimerais apprendre Intel Assembler. Je continue à entendre tous ces différents F/M/N/ASM mentionnés - mais je ne sais pas comment ils se rapportent à ce que je souhaite réaliser?
Quelqu'un pourrait-il m'aider, s'il vous plaît, à m'aider à identifier ce qu'il me faudrait pour apprendre à programmer à bas niveau sur l'architecture Intel? Je ne comprends pas très bien comment les "différents assembleurs" sont en corrélation, encore plus avec x86, IA64, AMD64/x86-64, etc.
Si cela peut vous aider, je suis plus à l'aise avec les IDE Eclipse et Visual Studio 08/10.
MASM
(Microsoft Assembler) est le populaire assembleur pour Windows. MASM
est pour les applications 16 bits et 32 bits (x86
). ML64
est celui des sources 64 bits (AMD64/x86-64
)
NASM
(Netwide Assembler) est l'assembleur populaire pour Linux, mais il est disponible sur Windows aussi. NASM prend en charge les programmes 16 bits, 32 bits et 64 bits.
FASM
(Flat Assembler) est disponible pour Windows et Linux. FASM prend également en charge les programmes 32 bits et 64 bits.
Je suppose donc que vous préférez choisir MASM
en fonction de vos besoins.
Juste pour en dire plus, RosAsm est un assembleur Windows 32 bits seulement qui a plusieurs points intéressants comme
En ce qui concerne le support 64 bits, RosAsm n’en a pas mais un de ses contributeurs travaille actuellement sur une réécriture 64 bits (BUAsm, l’assembleur Bottom-Up).