yasm - Online nel cloud

Questo è il comando yasm che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


yasm - L'assemblatore modulare Yasm

SINOSSI


Yasm [-f formato] [-o file di uscita] [Altri Opzioni...] {infilare}

Yasm -h

DESCRIZIONE


Lo Yasm Modular Assembler è un assemblatore portatile e retargetable scritto sotto il "nuovo"
(clausola 2 o 3) Licenza BSD. Yasm attualmente supporta i set di istruzioni x86 e AMD64,
accetta le sintassi degli assemblatori NASM e GAS, emette binari, ELF32, ELF64, COFF, Win32 e
L'oggetto Win64 formatta e genera informazioni di debug di origine in STABS, DWARF 2 e
CodeView 8 formati.

YASM è composto da Yasm comando, libyasm, la libreria principale di backend e un gran numero
di moduli. Attualmente, libyasm e i moduli caricabili sono incorporati staticamente nel Yasm
eseguibile.

. Yasm comando assembla il file infile e indirizza l'output al file file di uscita if
specificato. Se file di uscita non è specificato, Yasm deriverà un nome di file di output predefinito da
il nome del suo file di input, di solito aggiungendo .o o .obj, o rimuovendo tutte le estensioni
per un file binario grezzo. In caso contrario, il nome del file di output sarà yasm.out.

Se chiamato con an infilare di "-", Yasm assembla lo standard input e indirizza l'output a
il file file di uscita, o yasm.out se no file di uscita è specificato.

VERSIONI


Molte opzioni possono essere fornite in una delle due forme: o un trattino seguito da una singola lettera,
o due trattini seguiti da un nome di opzione lungo. Le opzioni sono elencate in ordine alfabetico.

Informazioni Opzioni
-a arco or --arco=arco: Seleziona l'architettura di destinazione
Seleziona l'architettura di destinazione. L'architettura predefinita è "x86", che supporta
entrambi i set di istruzioni IA-32 e derivati ​​e AMD64. Per stampare un elenco di
architetture disponibili per lo standard output, utilizzare "help" come arco. Vedere yasm_arch(7) per a
elenco delle architetture supportate.

-f formato or --oformato=formato: Seleziona il formato dell'oggetto
Seleziona il formato dell'oggetto di output. Il formato oggetto predefinito è "bin", che è un flat
formato binario senza rilocazione. Per stampare un elenco di formati oggetto disponibili su
output standard, usa "help" come formato. Vedere yasm_objfmts(7) per un elenco di supportati
formati degli oggetti.

-g mettere a punto or --dformato=mettere a punto: Seleziona il formato di debug
Seleziona il formato di debug per le informazioni di debug. È possibile utilizzare le informazioni di debug
da un debugger per associare il codice eseguibile al file di origine o ottenere dati
informazioni sulla struttura e sul tipo. I formati di debug disponibili variano tra i diversi oggetti
formati; Yasm errore quando viene selezionata una combinazione non valida. L'oggetto predefinito
formato è selezionato dal formato dell'oggetto. Per stampare un elenco di debug disponibili
formati allo standard output, utilizzare "help" come mettere a punto. Vedere yasm_dbgfmts(7) per un elenco di
formati di debug supportati.

-L stratagemma or --lformato=stratagemma: Seleziona il formato file dell'elenco
Seleziona il formato/stile del file dell'elenco di output. Elenca i file in genere mescolano i
sorgente originale con il codice macchina generato dall'assemblatore. L'elenco predefinito
formato è "nasm", che imita il formato del file di elenco NASM. Per stampare un elenco di disponibili
elenca i formati di file nell'output standard, usa "aiuto" come stratagemma.

-l listfile or --lista=listfile: Specifica il nome del file dell'elenco
Specifica il nome del file dell'elenco di output. Se questa opzione non viene utilizzata, nessun file di elenco
è generato.

-m macchina or --macchina=macchina: Seleziona l'architettura della macchina di destinazione
Seleziona l'architettura della macchina di destinazione. Essenzialmente un sottotipo del selezionato
architettura, il tipo di macchina seleziona tra i principali sottoinsiemi di un'architettura. Per
esempio, per l'architettura “x86”, le due macchine disponibili sono “x86”, che è
utilizzato per l'IA-32 e il set di istruzioni derivate a 32 bit e "amd64", che viene utilizzato
per il set di istruzioni a 64 bit. Questa differenziazione è necessaria per generare il
file oggetto corretto per formati di oggetti rilocabili come COFF ed ELF. Per stampare un
elenco delle macchine disponibili per una data architettura allo standard output, utilizzare "help" come
macchina e l'architettura data usando -a arco. Vedere yasm_arch(7) per maggiori dettagli.

-o Nome del file or --objfile=Nome del file: Specifica il nome del file dell'oggetto
Specifica il nome del file di output, sovrascrivendo qualsiasi nome predefinito generato da Yasm.

-p parser or --parser=parser: Seleziona parser
Seleziona il parser (la sintassi assembler). Il parser predefinito è "nasm", che
emula la sintassi di NASM, il Netwide Assembler. Un altro parser disponibile è "gas",
che emula la sintassi di GNU AS. Per stampare un elenco di parser disponibili su standard
output, usa "help" come parser. Vedere yasm_parser(7) per un elenco di parser supportati.

-r preproc or --preproc=preproc: Seleziona il preprocessore
Seleziona il preprocessore da utilizzare sul file di input prima di passarlo al parser.
I preprocessori spesso forniscono funzionalità macro che non sono incluse nel main
analizzatore. Il preprocessore predefinito è "nasm", che è una versione importata dell'attuale
preprocessore NASM. È disponibile anche un preprocessore "grezzo", che salta semplicemente il
fase di pre-elaborazione, passando il file di input direttamente al parser. Per stampare un elenco di
preprocessori disponibili per l'output standard, utilizzare "help" come preproc.

-h or --Aiuto: stampa un riepilogo delle opzioni
Stampa un riepilogo delle opzioni di chiamata. Tutte le altre opzioni vengono ignorate e nessun output
viene generato il file.

--versione: Ottieni la versione Yasm
Questa opzione fa in modo che Yasm stampi il numero di versione di Yasm e una licenza
riassunto all'output standard. Tutte le altre opzioni vengono ignorate e nessun file di output è
generato.

Avvertenza Opzioni
-W le opzioni hanno due forme contrarie: -WNome e -No-Nome. Solo i moduli non predefiniti sono
mostrato qui.

Le opzioni di avviso sono gestite nell'ordine indicato sulla riga di comando, quindi se -w is
seguito da -Worphan-etichette, tutti gli avvisi sono disattivati con l’esclusione di per le etichette orfane.

-w: Inibisce tutti i messaggi di avviso
Questa opzione fa sì che Yasm inibisca tutti i messaggi di avviso. Come discusso sopra, questo
L'opzione può essere seguita da altre opzioni per riattivare gli avvisi specificati.

-Errore: considera gli avvisi come errori
Questa opzione fa in modo che Yasm consideri tutti gli avvisi come errori. Normalmente gli avvisi no
impedire la generazione di un file oggetto e non comportare uno stato di uscita non riuscito
da Yasm, mentre gli errori lo fanno. Questa opzione rende gli avvisi equivalenti agli errori in termini
di questo comportamento.

-Wno-non-riconosciuto-char: Non avvisa in caso di caratteri immessi non riconosciuti
Fa in modo che Yasm non avvisi sui caratteri non riconosciuti trovati nell'input. Normalmente Yasm
genererà un avviso per qualsiasi carattere non ASCII trovato nel file di input.

-Worphan-etichette: Avvisa sulle etichette prive di un'opzione finale
Quando si utilizza il parser compatibile con NASM, Yasm avverte delle etichette trovate da sole su
una riga senza due punti finali. Sebbene queste siano etichette legali nella sintassi NASM, potrebbero
essere involontario, a causa di errori di battitura o di ordinamento delle definizioni macro.

-X stile: Modifica lo stile di segnalazione di errore/avviso
Seleziona uno stile di output specifico per i messaggi di errore e di avviso. L'impostazione predefinita è "gnu"
stile, che imita l'output di gcc. È disponibile anche lo stile "vc", che imita
l'output del compilatore Visual C++ di Microsoft.

Questa opzione è disponibile in modo che Yasm si integri in modo più naturale negli ambienti IDE
come Visual Studio o Emacs, consentendo all'IDE di riconoscere correttamente il
messaggio di errore/avviso in quanto tale e ricollegare alla riga incriminata del codice sorgente.

preprocessore Opzioni
Mentre queste opzioni del preprocessore teoricamente influenzeranno qualsiasi preprocessore, l'unico
preprocessore attualmente in Yasm è il preprocessore "nasm".

-D macro[=valore]: predefinire una macro
Predefinisce una macro a riga singola. Il valore è facoltativo (se non viene fornito alcun valore, il
macro è ancora definita, ma a un valore vuoto).

-e or --preproc-solo: Solo preelaborazione
Arresta l'assemblaggio dopo la fase di prelavorazione; l'output preelaborato viene inviato al
nome di output specificato o, se non viene specificato alcun nome di output, lo standard output. No
file oggetto viene prodotto.

-I sentiero: Aggiungi il percorso del file di inclusione
Aggiunge directory sentiero al percorso di ricerca per i file di inclusione. Il percorso di ricerca predefinito è
includendo solo la directory in cui risiede il file sorgente.

-P Nome del file: pre-include un file
File pre-include Nome del file, facendo sembrare che Nome del file è stato anteposto al
ingresso. Può essere utile per anteporre macro multilinea che il -D non può supportare.

-U macro: Non definire una macro
Non definisce una macro a riga singola (puòessere una macro incorporata o una definita in precedenza
nella riga di comando con -D.

ESEMPI


Per assemblare la sintassi NASM, source.asm x32 a 86 bit nel file ELF source.o, avviso su
etichette orfane:

yasm -f elf32 -Worphan-etichette source.asm

Per assemblare la sintassi NASM AMD64 sorgente x.asm nel file Win64 object.obj:

yasm -f win64 -o oggetto.obj x.asm

Per assemblare la sintassi NASM già preelaborata x86 source y.asm in un file binario flat y.com:

yasm -f bin -r raw -o y.com y.asm

DIAGNOSTICA


. Yasm il comando esce da 0 in caso di successo e diverso da zero se si verifica un errore.

COMPATIBILITA '


Il parser e il preprocessore NASM di Yasm, mentre si sforzano di essere il più compatibili possibile
con NASM, presentano alcune incompatibilità dovute alla diversa struttura interna di YASM.

Al parser e al preprocessore GAS di Yasm mancano alcune funzionalità presenti in GNU AS.

RESTRIZIONI


Poiché i file oggetto sono spesso dipendenti dall'architettura e dalla macchina, non tutte le combinazioni di
i formati degli oggetti, le architetture e le macchine sono legali; cercando di usare un invalido
combinazione risulterà in un errore.

Non c'è supporto per le mappe dei simboli.

Usa yasm online utilizzando i servizi onworks.net



Gli ultimi programmi online per Linux e Windows