Domanda

Sto cercando di rendere uno strumento di debug hardware che gira sulla CPU nudo (86), la modalità protetta a 32 bit e nessun sistema operativo. A causa di vincoli di tempo, io non scriverò lo strumento tutto in assembly x86. Mi piace il linguaggio Ada (ma sono inesperto con esso) e ho pensato che potrebbe essere interessante utilizzare Ada invece di C per questo progetto.

Con C si può usare l'assembly inline o chiamare sottoprogrammi scritti in assemblea per accedere al BIOS per le cose di base come la tastiera I / O o la visualizzazione del testo sullo schermo. Ha Ada ha una capacità simile? E se è così, qualcuno sa di qualsiasi risorsa o tutorial per chiamare i metodi di assemblaggio e il collegamento con loro?

È stato utile?

Soluzione

È possibile utilizzare il codice assembly inline in Ada. È necessario utilizzare il pacchetto System.Machine_Code che fornisce la (sovraccarico) Funzione Asm.

Altri suggerimenti

Il manuale GNAT di riferimento ha una sezione su Codice macchina inserimenti , e mentre è GNAT-specifica, si dovrebbe essere in grado di ottenere un senso generale di come funziona, anche se si sta utilizzando un compilatore diverso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top