ASM: MASM, NASM, FASM?

Já fiz a programação da montagem do braço e gostaria de aprender a montagem da inteligência. Continuo a ouvir todos estes diferentes F/M/N / ASMs mencionados - mas não tenho a certeza de como eles estão relacionados com o que Eu desejo alcançar?

Alguém pode ajudar-me a identificar o que preciso para aprender a programar baixo nível na arquitectura da Intel? Eu não entendo como os" diferentes Montadores " se correlacionam, ainda mais com x86, IA64, AMD64/x86-64 etc?

Se for de qualquer ajuda, estou mais confortável com Eclipse e Visual Studio 08/10 IDEs.

Author: user997112, 2012-04-16

2 answers

MASM (Microsoft Assembler) é o assembler popular para Windows. MASM é para aplicações de 16 bits e 32 bits (x86). ML64 é o único para 64 bits fontes (AMD64/x86-64)

NASM (Netwide Assembler) é o assembler popular para Linux, mas está disponível em Windows também. NASM suporta 16-bit, 32 bit e 64 bit programas.

FASM (Assembler Flat) está disponível para Windows e Linux. FASM também suporta 32-bit e 64-bit programa.

Então, acho que prefere escolher MASMde acordo com as suas necessidades.
 23
Author: Pavan Manjunath, 2012-04-16 19:22:40

Só para falar sobre isso, O Rosasmo é um montador de janelas com apenas 32 bits que tem vários pontos de fixação como

  • um IDE integrado que é auto-compilado com o código-fonte disponível
  • uma sintaxe inspirada na NASM
  • um poderoso sistema macro para um design de linguagem de alto nível
  • A particularidade de guardar o código-fonte dentro do produzido .exe and .dll (numa secção de Educação Física).
No que diz respeito ao suporte de 64 bits, o Rosasmo só tem um dos seus os colaboradores estão actualmente a trabalhar numa reescrita de 64 bits (BUAsm, o montador de baixo para cima)
 -1
Author: Seki, 2012-04-17 08:00:14