私はアセンブリ (z80 および x86) を学習しており、現在、アセンブラを使用してバイナリをビルドすることに取り組んでいます。
(相対ではなく) 絶対アドレスでラベルを使用するにはどうすればよいですか?
私が理解していることから、アセンブラはコンパイル時にラベルをメモリアドレスに変換しますが、アセンブラは実行時にラベルが存在するアドレスをどのように知ることができますか?
プログラムを特定のメモリ アドレスにロードしRST
、プログラム カウンタを0000h
. オペレーティング システムが実行されているとどうなりますか?
call
オペレーティング システム内で実行されるコードは、その開始アドレスを知らないのではないでしょうか (したがって、 やret
ラベルのような非相対オペコードを使用する方法がありません)。