Sto scrivendo un compilatore e ho seguito tutti i passaggi (tokenizzazione, analisi, struttura della struttura della sintassi, ecc.) Che mostrano in tutti i libri del compilatore. (Si prega di non commentare con il link alla domanda "Risorse per scrivere un compilatore"!).Scelta dell'assemblatore corretto e di apprendimento per la scrittura del compilatore
Ho scelto di utilizzare NASM insieme a alink come backend.
Ora il mio problema è: non riesco a trovare alcuna buona risorsa per l'apprendimento di NASM e assemblaggio in generale.
Il wikibook (tedesco) sull'assemblaggio x86 è orribile. Non spiegano nemmeno il codice che scrivono lì, al momento non riesco nemmeno a ottenere cose semplici come aggiungere 1 a 2 e produrre risultati positivi.
- Dove posso imparare l'assembly NASM x86?
Non c'è alcun motivo per cui un compilatore deve emettere l'assemblatore. Hanno generato un linguaggio con cui hai familiarità, come C, e quindi usa il compilatore C (o qualsiasi altra cosa) per produrre l'eseguibile finale. –
la tua domanda è più simile a "Dove posso imparare l'assembly NASM x86?" come ti sei detto. Si prega di scegliere un argomento migliore, in quanto non ha nulla a che fare con i compilatori. Hai preso in considerazione llvm? – topskip
Per i punti bonus, invia il tuo codice nella stessa lingua che sta compilando. Quindi compila quello. –