NASM er en 80x86 assembler designet for bærbarhet og modularitet. Prosjektet støtter en rekke objekt filformater, inkludert Linux a.out og ELF, COFF, Microsoft 16-bit OBJ og Win32. Det vil også utgang vanlig binærfiler.
Syntaksen er designet for å være enkel og lett å forstå, i likhet med Intels men mindre kompleks. Den støtter Pentium, P6, MMX, 3DNow! og SSE opcodes, og har makrofunksjon. Det inkluderer en disassembler samt
The Netwide Assembler vokste ut av en idé om comp.lang.asm.x86. (Eller muligens alt.lang.asm - jeg glemmer hvilke), som i hovedsak var at det ikke synes å være en god gratis x86-serien assembler rundt, og at kanskje noen burde skrive en
-. A86 er god, men ikke gratis, og spesielt du ikke får noen 32-bit evne før du betaler. Det er DOS bare, også
-. Gass er gratis, og havner enn DOS og Unix, men det er ikke veldig bra, siden det er designet for å være en back end til gcc, som alltid hentet det riktig kode. Så det feilsjekking er minimal. Også, er dens syntaks fryktelig, fra synspunkt av alle som prøver å faktisk skrive noe i det. Pluss du kan ikke skrive 16-bits kode i det (riktig)
-. As86 er Minix- og Linux-spesifikke, og (min versjon minst) ser ikke ut til å ha mye (eller noen) dokumentasjon.
- MASM er ikke veldig bra, og det er (var) dyrt, og det går bare under DOS
-. TASM er bedre, men fortsatt arbeider for MASM kompatibilitet, noe som betyr at millioner av direktiver og tonnevis av rød teip. Og syntaksen er i hovedsak MASM tallet, med motsetningene og quirks det medfører (selv om det sorterer ut noen av dem ved hjelp av Ideal-modus). Det er altfor dyrt. Og det er DOS-bare.
Så her, for koding nytelse, er NASM. I dag er det fortsatt i prototype-stadiet - vi ikke love at det kan utkonkurrere noen av disse montører. Men vær så snill, send oss feilrapporter, rettelser, nyttig informasjon, og alt annet du kan få hendene på (og takk til de mange som har gjort dette allerede! Du vet alle hvem du er), og vi vil forbedre det ut til det ugjenkjennelige. Igjen.
Installere NASM i Unix
Når du har fått Unix kildearkiv for NASM, nasm-X.XX.tar.gz (der X.XX betegner versjonsnummer NASM som finnes i arkivet), pakk den inn i en katalog som / usr / local / src. Arkivet, når pakket ut, vil skape sin egen underkatalog nasm-X.XX
NASM er en auto-konfigurering pakke:. Når du har pakket den ut, cd til katalogen det er blitt pakket inn og type ./configure. Dette skallet skriptet vil finne den beste C-kompilator for å bruke for å bygge NASM og satt opp Make-filer tilsvarende.
Når NASM har auto-konfigurert, kan du skrive gjøre å bygge NASM og ndisasm binærfiler, og deretter gjøre installere å installere dem i / usr / local / bin og installere man-sidene nasm.1 og ndisasm.1 i / usr / local / mann / man1. Alternativt kan du gi alternativer som prefix til configure-skriptet (se filen INSTALL for mer informasjon), eller installere programmer selv.
NASM kommer også med et sett med verktøy for håndtering av RDOFF tilpasset objekt-filformatet, som er i rdoff underkatalog av NASM arkivet. Du kan bygge disse med make RDF og installere dem med make rdf_install, hvis du vil ha dem.
Hvis NASM unnlater å automatisk konfigurere, kan du fortsatt være i stand til å gjøre det kompilere ved hjelp av fall-back Unix Makefile Makefile.unx. Kopiere eller endre navn på den filen til Makefile og prøve å skrive gjøre. Det er også en Makefile.unx fil i rdoff katalogen
Hva er nytt i denne utgaven:.
- Når optimalisering er aktivert, mov R64, imm optimaliserer nå til den korteste formen mulig
Hva er nytt i versjon 2.09.01:
- Fix NULL dereferanse på savnet
Kommentarer ikke funnet