24531904_j
24531904_j 24531904_j
LMSW—Load Machine Status Word オペコード 命令 説明 0F 01 /6 LMSW r/m16 r/m16 を CR0 のマシン・ステータス・ワードにロードする。 説明 ソース・オペランドをマシン・ステータス・ワード、 すなわちCR0 レジスタのビット 0 ~ 15 にロードする。 ソース ・ オペランドには、 16 ビッ ト汎用レジスタまたはメモリ ・ ロケーションを使用できる。 ソース ・ オペランドの下位4 ビッ ト (PE、 MP、 EM、 TS フ ラグ ) だけが CR0 にロード される。 CR0 の PG、 CD、 NW、 AM、 WP、 NE、 ET フラグ は影響を受けない。 オペラン ド ・ サイズ属性は、 この命令には効果を もたない。 ソース ・オペランドのPE フラグ ( ビット 0) が 1 にセッ ト されている場合は、 この命令 によってプロセッサは保護モードに切り替わる。 CR0 レジスタのPE フラグはスティッ キー ・ ビッ トである。 一度1 にセッ ト される と、 LMSW 命令を使用して こ の フ ラ グを ク リアし、 実アドレス・モードへのスイッチ・バックを強制することはできない。 LMSW 命令は、 オペレーティング・システム・ ソフトウェアで使用するために設けられ たものであり、 アプリケーション・プログラムでは使用してはならない。 保護モード ま たは仮想 8086 モ ー ド では、 こ の命令は CPL 0 でしか実行できない。 この命令は、 インテル ® 286 プロセッサとの互換性を維持するために用意されている。 インテル 286 よ り新しいプロセッサ向けに開発されるプログラムおよびプロシージ ャで は、 MOV ( コント ロール・ レジスタ ) 命令を使用してマシ ン ・ ス テ ー タ ス ・ ワ ー ド を ロードすることを推奨する。 こ の命令は シ リ アル化命令である。 操作 IF Itanium System Environment THEN IA-32_Intercept(INST,LMSW); CR0[0:3] ← SRC[0:3]; 影響を受けるフラグ なし。 追加の Itanium ベース・システム環境例外 IA-32_Intercept 強制命令イ ン タ ー セプ ト 。 保護モード例外 #GP(0) 現行特権レベルが 0 でない場合。 メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 DS、 ES、 FS、 または GS レジスタを使用してメモリがア クセスされ、 レジスタの内容が NULL セグメン ト ・ セレ クタであった場合。 #SS(0) メモリ ・ オペランドの実効アドレスが SS セグメン ト の範 囲外の場合。 #PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。 3:640 第 3 巻 : IA-32 基本命令リファレンス
LMSW—Load Machine Status Word ( 続き ) 実アドレス・モード例外 #GP メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 仮想 8086 モード例外 #GP(0) 現行特権レベルが 0 でない場合。 メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 #SS(0) メモリ ・ オペランドの実効アドレスが SS セグメン ト の範 囲外の場合。 #PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。 第 3 巻 : IA-32 基本命令リファレンス 3:641
- Seite 602 und 603: INT n/INTO/INT 3—Call to Interrup
- Seite 604 und 605: INT n/INTO/INT 3—Call to Interrup
- Seite 606 und 607: INT n/INTO/INT 3—Call to Interrup
- Seite 608 und 609: INT n/INTO/INT 3—Call to Interrup
- Seite 610 und 611: INVD—Invalidate Internal Caches (
- Seite 612 und 613: IRET/IRETD—Interrupt Return オ
- Seite 614 und 615: IRET/IRETD—Interrupt Return ( 続
- Seite 616 und 617: IRET/IRETD—Interrupt Return ( 続
- Seite 618 und 619: IRET/IRETD—Interrupt Return ( 続
- Seite 620 und 621: Jcc—Jump if Condition Is Met オ
- Seite 622 und 623: Jcc—Jump if Condition Is Met (
- Seite 624 und 625: JMP—Jump オペコード 命令
- Seite 626 und 627: JMP—Jump ( 続き ) 操作 IF nea
- Seite 628 und 629: JMP—Jump ( 続き ) END; TASK-GAT
- Seite 630 und 631: JMP—Jump ( 続き ) #PF ( フォ
- Seite 632 und 633: JMPE—Jump to Intel ® Itanium ®
- Seite 634 und 635: LAR—Load Access Rights Byte オ
- Seite 636 und 637: LAR—Load Access Rights Byte ( 続
- Seite 638 und 639: LDS/LES/LFS/LGS/LSS—Load Far Poin
- Seite 640 und 641: LEA—Load Effective Address オペ
- Seite 642 und 643: LEAVE—High Level Procedure Exit
- Seite 644 und 645: LES—Load Full Pointer 「LDS/LES/
- Seite 646 und 647: LGDT/LIDT—Load Global/Interrupt D
- Seite 648 und 649: LGS—Load Full Pointer 「LDS/LES/
- Seite 650 und 651: LLDT—Load Local Descriptor Table
- Seite 654 und 655: LOCK—Assert LOCK# Signal Prefix
- Seite 656 und 657: LODS/LODSB/LODSW/LODSD—Load Strin
- Seite 658 und 659: LODS/LODSB/LODSW/LODSD—Load Strin
- Seite 660 und 661: LOOP/LOOPcc—Loop According to ECX
- Seite 662 und 663: LSL—Load Segment Limit ( 続き )
- Seite 664 und 665: LSS—Load Full Pointer 「LDS/LES/
- Seite 666 und 667: LTR—Load Task Register ( 続き )
- Seite 668 und 669: MOV—Move ( 続き ) デスティ
- Seite 670 und 671: MOV—Move ( 続き ) #GP( セレ
- Seite 672 und 673: MOV—Move to/from Control Register
- Seite 674 und 675: MOV—Move to/from Debug Registers
- Seite 676 und 677: MOVS/MOVSB/MOVSW/MOVSD—Move Data
- Seite 678 und 679: MOVSX—Move with Sign-Extension
- Seite 680 und 681: MOVZX—Move with Zero-Extend オ
- Seite 682 und 683: MUL—Unsigned Multiplication of AL
- Seite 684 und 685: NEG—Two's Complement Negation オ
- Seite 686 und 687: NOP—No Operation オペコード
- Seite 688 und 689: NOT—One's Complement Negation (
- Seite 690 und 691: OR—Logical Inclusive OR ( 続き
- Seite 692 und 693: OUT—Output to Port ( 続き ) 操
- Seite 694 und 695: OUTS/OUTSB/OUTSW/OUTSD—Output Str
- Seite 696 und 697: OUTS/OUTSB/OUTSW/OUTSD—Output Str
- Seite 698 und 699: POP—Pop a Value from the Stack
- Seite 700 und 701: POP—Pop a Value from the Stack (
LMSW—Load Machine Status Word ( 続き )<br />
実アドレス・モード例外<br />
#GP メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、<br />
または GS セグ メ ン ト の範囲外の場合。<br />
仮想 8086 モード例外<br />
#GP(0) 現行特権レベルが 0 でない場合。<br />
メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、<br />
または GS セグ メ ン ト の範囲外の場合。<br />
#SS(0) メモリ ・ オペランドの実効アドレスが SS セグメン ト の範<br />
囲外の場合。<br />
#PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。<br />
第 3 巻 : IA-32 基本命令リファレンス 3:641