Assembler (software): verschil tussen versies
Verwijderde inhoud Toegevoegde inhoud
Geen bewerkingssamenvatting |
Red. |
||
Regel 1:
{{zie artikel|Voor het gelijknamige hypothetische begrip uit de nanotechnologie, zie [[Assembler (nanobots)]]}}
Een '''assembler''' is een vertaalprogramma dat een [[computerprogramma|programma]], geschreven in een [[assembleertaal]] (ook wel ''assembly'' genoemd), kan omzetten naar de [[machinetaal|machinecode]] die een [[processor (computer)|processor]] kan uitvoeren. De assembleertaal wordt zelf ook wel (verkeerdelijk) assembler
==Assembleren en disassembleren==
Regel 10:
Enkele assemblers voor de Intel-x86-familie zijn:
''MASM'', de Microsoft assembler, probeert assembly meer op een hogere programmeertaal te laten lijken
''TASM'', de Borland Turbo assembler, heeft een duidelijkere syntaxis dan MASM, maar
''NASM'', de Netwide assembler, een redelijk nieuwe assembler met een zeer simpele syntaxis waarin alles duidelijk gezegd moet worden en niets wordt aangenomen. Deze [[opensourcesoftware]] is geschikt voor mensen die alles in de hand willen houden. Deze assembler is geschikt voor het schrijven van de [[bootloader]] van een besturingssysteem vanwege de perfecte controle over het uiteindelijke resultaat.
''YASM'',
''FASM'', de Flat assembler, is ook een opensource-assembler. Ook FASM ondersteunt de x86-64-instructieset.<ref>flatassembler.net</ref>
Verder heeft elke
De bekende [[GNU Compiler Collection]] (GCC) vertaalt altijd de hogere code (bijvoorbeeld C) eerst naar assembly, niet direct in objectcode. Dit betekent dat voor elke processor waarvoor GCC geïmplementeerd is, er een assembler ter beschikking moet staan.
== Uitvoerbare code= =
De meeste assemblers geven als uitvoer een [[objectcode|objectbestand]]. Gebruikelijke extensies daarbij zijn .obj
Programma's voor embedded processoren worden vaak direct in uitvoerbare vorm gegenereerd.
Regel 33:
==Externe links==
* {{en}}[http://www.intel.com www.intel.com], site met zeer veel informatie over x86
* {{en}}[http://www.ctyme.com/rbrown.htm Ralf Browns interruptlijst]
|