それで、この夏、80x86 のアセンブリ言語を学ぶことにしました。組み立てに関する本を 4 冊手に取りました。これまでのところ、最初の 2 つを読み、3 つ目は途中まで読んでおり、提示された内容はすべて理解していると思います。私はいくつかの Hello World プログラムと、本からの他の小さな演習を書きましたが、この言語に非常に慣れています。ただし、これまでどの本でも取り上げられていないことが 1 つありますが、それは私が最も興味を持っていることです。つまり、アセンブリ言語からハードウェアを直接アドレス指定するにはどうすればよいでしょうか? これまでの本では、著者はシステム コール、メモリ内の特定の関数へのジャンプ、および割り込みを使用してきましたが、これらの方法はシステムに既に存在するソフトウェアに依存しています。
NASM を使用してプログラムを作成し、それらを古い Pentium I コンピュータにロードしています。現在、OS は使用しておらず、BIOS のみを使用しています。私がしようとしているのは、自律的で BIOS に依存しない小さな OS を作成することだと思います (初期ブートを除く)。誰でも私を助けることができますか?