トップQs
タイムライン
チャット
視点
LOADALL
ウィキペディアから
Remove ads
概要
LOADALL命令は、その名前が示すように1命令でCPUのすべての内部レジスタをロードする。セグメントレジスタの可視部(visible part)に加えて、ディスクリプターキャッシュ部(cached part)もロードするため、公開されたx86命令ではできないことが可能である。 LOADALL命令の有用な使用例は、リアルモードのままで1Mバイト以上のメモリ領域をアクセスすることである。OS/2 1.x [2]などがLOADALL命令を使用している。
80286版LOADALL
オペコードは、0Fh 05h。80286版LOADALLは、セグメントレジスタの値に関係なく、00800h–00866hのアドレスからデータを読み込む。
80286では、LOADALL命令を使用しても、プロテクトモードからリアルモードに戻ることはできない。すなわち、MSWのPEビットはクリアできない。しかし、LOADALL命令があれば、リアルモードのままで1MB以上のメモリにアクセスすることができ、プロテクトモードに移行する必要はなくなる。
Remove ads
80386版LOADALL
オペコードは、0Fh 07h。 80386版LOADALLは、アドレスES:EDIからデータを読み込む。ESは、ディスクリプターキャッシュ部ではなく、ESの可視部が使用される。
脚注
参考文献
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads