Naslaginformatie over arm-assembly's
De Microsoft ARM-assembly's, armasm en armasm64, ondersteunen verschillende opdrachtregelopties. Standaard stelt armasm ARMv7 Thumb assembly-taal samen in de Microsoft-implementatie van de Common Object File Format (COFF). De armasm64 assemblyer maakt COFF-objectcode voor ARM64- en ARM64EC doelen. De linker kan COFF-codeobjecten koppelen die worden geproduceerd door zowel de ARM-assembly als de C/C++-compiler. Het kan een koppeling maken met objectbibliotheken die zijn gemaakt door de bibliothecair.
Syntaxis
armasm
[opties] source_fileobject_file
armasm
[opties] source_file
armasm64
[opties] source_fileobject_file
armasm64
[opties] source_file
Parameters
opties
Een combinatie van nul of meer van de volgende opties:
-16
Alleen verkrijgbaar in armasm. Stel de bron samen als 16-bits duiminstructies. Deze optie is de standaardinstelling.-32
Alleen verkrijgbaar in armasm. Stel de bron samen als 32-bits ARM-instructies.-coff_thumb2_only
Alleen verkrijgbaar in armasm. Alleen thumb-2-code toestaan.-errorReport:
optie
Deze optie is afgeschaft. In Windows Vista en hoger wordt foutrapportage beheerd door WER-instellingen (Windows Error Reporting).-errors
bestandsnaam
-e
bestandsnaam
Fout- en waarschuwingsberichten omleiden naar bestandsnaam. Deze berichten worden standaard verzonden naarstdout
.-funcOverride:
function_name
Alleen verkrijgbaar in armasm64. Functie verzenden die ondersteuning voor function_nameoverschrijft.-g
Foutopsporingsgegevens genereren.-gh:SHA1
Gebruik het cryptografische hash-algoritme SHA-1 om een controlesom te genereren van elk bronbestand in foutopsporingsgegevens. Overschrijft-gh:SHA256
.-gh:SHA256
Gebruik het cryptografische hash-algoritme SHA-256 om een controlesom te genereren van elk bronbestand in foutopsporingsgegevens. Deze optie is standaard ingeschakeld in Visual Studio 2022 versie 17.0 en hoger.-guard:ehcont
[-
]
Genereer een gesorteerde lijst met de relatieve virtuele adressen (RVA) van alle geldige uitzonderingsafhandelingsdoelen voor een binair bestand. Deze wordt tijdens runtime gebruikt voorNtContinue
enSetThreadContext
instructiepointervalidatie. Standaard is-guard:ehcont
uitgeschakeld en moet deze expliciet zijn ingeschakeld. Als u deze optie expliciet wilt uitschakelen, gebruikt u-guard:ehcont-
. Deze optie is beschikbaar in Visual Studio 2019 versie 16.7 en hoger. De functie wordt ondersteund voor 64-bits processen in een 64-bits besturingssysteem.-help
-h
Druk het helpbericht van de opdrachtregel af.-i
dir[;
dir]
Voeg een of meer opgegeven mappen toe aan het zoekpad opnemen. Gescheiden mappen met behulp van een puntkomma (;
).-ignore
warning_number
Schakel het opgegeven waarschuwingsnummer uit. Zie diagnostische berichten van ARM Assemblervoor mogelijke waarden.-list
list_file
Maak een gedetailleerde lijst van de gegenereerde assemblytaal om te list_file. De parameter list_file is optioneel. Als dit wordt weggelaten, voegt de assemblyer.lst
toe aan de basisnaam van source_file om het vermeldingsbestand te maken.-machine
machine
Geef het computertype op dat moet worden ingesteld in de PE-header. In armasmzijn mogelijke waarden voor machine:-
ARM-: hiermee stelt u het type machine in op
IMAGE_FILE_MACHINE_ARMNT
. Deze optie is de standaardinstelling. -
THUMB-: hiermee stelt u het computertype in op
IMAGE_FILE_MACHINE_THUMB
.
In armasm64zijn mogelijke waarden:
-
ARM64-: stelt het type machine in op
IMAGE_FILE_MACHINE_ARM64
. Deze optie is de standaardinstelling. -
ARM64EC: hiermee stelt u het computertype in op
IMAGE_FILE_MACHINE_ARM64EC
.
-
ARM-: hiermee stelt u het type machine in op
-noesc
-noe
Met C-stijl ontsnapte speciale tekens negeren, zoals\n
of\t
.-nologo
De copyrightbanner onderdrukken.-nowarn
-now
Schakel alle waarschuwingsberichten uit.-o
object_file
Geef de naam op van het objectbestand (uitvoer). De optie-o
is optioneel; u kunt in plaats daarvan een objectbestandsnaam opgeven als het laatste element van de opdrachtregel.-oldit
Alleen verkrijgbaar in armasm. IT-blokken in ARMv7-stijl genereren. Standaard worden IT-blokken die compatibel zijn met ARMv8 gegenereerd.-predefine
richtlijn
-pd
richtlijn
Geef een SETA-, SETL- of SETS-instructie op voor het vooraf gedefinieerde symbool.
Voorbeeld:armasm.exe -predefine "COUNT SETA 150" source.asm
Zie de ARM Compiler armasm Reference Guidevoor meer informatie.-sourcelink:
sourcelink_filename
sourcelink_filename geeft een configuratiebestand met JSON-indeling op dat een eenvoudige toewijzing van lokale bestandspaden naar URL's voor bronbestanden bevat die moeten worden weergegeven in het foutopsporingsprogramma. Zie JSON-schema source linkvoor meer informatie over de indeling van dit bestand. Source Link is een taal- en broncodebeheeragnostisch systeem voor het bieden van bronopsporing voor binaire bestanden. Source Link wordt ondersteund voor systeemeigen binaire bestanden vanaf Visual Studio 2017 versie 15.8. Zie Source Linkvoor een overzicht van de bronkoppeling. Zie Source Link gebruikenvoor informatie over het gebruik van Source Link in uw projecten en het genereren van het SourceLink-bestand als onderdeel van uw project.-via
bestandsnaam
Lees extra opdrachtregelargumenten uit bestandsnaam.
source_file
De naam van het bronbestand.
object_file
Het laatste element van de opdrachtregel kan de naam van het objectbestand (uitvoer) opgeven. Als deze optie wordt weggelaten en er geen -o
optie is opgegeven, voegt de assemblyer .obj
toe aan de basisnaam van source_file om het objectbestand te maken.
Opmerkingen
In het volgende voorbeeld ziet u hoe u armasm gebruikt in een typisch scenario. Gebruik eerst armasm om een assemblytaalbronbestand (.asm) te bouwen naar een objectbestand (.obj). Gebruik vervolgens de CL-opdrachtregel-C-compiler om een bronbestand (.c) te compileren en geef ook de linkeroptie op om het ARM-objectbestand te koppelen.
armasm -o myasmcode.obj myasmcode.asm
cl myccode.c /link myasmcode.obj
Zie ook
diagnostische berichten van ARM Assembler
ARM Assembly-instructies