sahf
読み:エスエイエイチエフ
外語:SAHF: Store AH Register into Flags

 x86系プロセッサーの命令の一つで、AHレジスターをフラグレジスターの下位8ビットに代入する命令。
目次

情報

概要
 もともとは、8080のプログラムを8086に移植しやすくするために作られた命令だった。
 8080(とZ80)は、各々8ビットのAレジスターとフラグレジスターを合わせてAFレジスターという16ビットレジスターとして扱うことができた。
 8086ではフラグレジスターは完全に別の扱いだが、移植性を高めるため、AXレジスターからフラグに簡単に複写するための命令を用意した。

特徴

動作
 フラグレジスターの下位8ビットにAHレジスターを複写する。

適応
 16ビットモード(IA-16)、32ビットモード(IA-32)ともに利用可能。
 64ビットモードでは、初期には使用できないものがあったため、cpuidで対応するかどうかを判断する必要がある。EAX=80000001HでCPUID命令を実行し、ECXのビット0が1なら64ビットでも使用できる。

再検索