5

ベア CPU (x86)、32 ビット プロテクト モード、OS なしで動作するハードウェア デバッグ ツールの作成を検討しています。時間の制約により、ツールをすべて x86 アセンブリで作成することはしません。私は Ada 言語が好きですが (しかし、まだ経験がありません)、このプロジェクトで C ではなく Ada を使用するのは面白いかもしれないと考えました。

C では、インライン アセンブリを使用するか、アセンブリで記述されたサブプログラムを呼び出して、キーボード I/O や画面へのテキストの表示などの基本的な処理のために BIOS にアクセスできます。Ada にも同様の機能がありますか? もしそうなら、アセンブリメソッドを呼び出してそれらとリンクするためのリソースやチュートリアルを知っている人はいますか?

4

3 に答える 3

5

Ada ではインライン アセンブリ コードを使用できます。(オーバーロードされた)関数System.Machine_Codeを提供するパッケージを使用する必要があります。Asm

于 2009-05-21T03:21:41.813 に答える
2

GNAT リファレンス マニュアルにはMachine Code Insertionsに関するセクションがあり、GNAT 固有のものですが、別のコンパイラを使用している場合でも、それがどのように機能するかの一般的な感覚をつかむことができるはずです。

于 2009-05-21T12:32:57.173 に答える