24531904_j
24531904_j 24531904_j
LGS—Load Full Pointer 「LDS/LES/LFS/LGS/LSS」 を参照のこ と。 3:636 第 3 巻 : IA-32 基本命令リファレンス
LLDT—Load Local Descriptor Table Register オペコード 命令 説明 0F 00 /2 LLDT r/m16 セグメント・セレクタ r/m16 を LDTR にロードする。 説明 ソース ・オペランドをローカル・ディスク リプタ ・ テーブル・ レジスタ (LDTR) のセグ メン ト ・ セレクタ ・ フ ィ ールドにロー ドする。 ソース ・ オペランド ( 汎用レ ジ ス タ ま た はメモリ ・ ロケーション ) の内容は、 ロ ー カル ・ デ ィ ス ク リ プタ ・ テ ーブル (LDT) を指 示先とするセグメント ・セレクタである。 セグメント ・セレクタがLDTR にロード され た後に、 プロセッサはそのセグメン ト ・ セレク タを使用して、 グローバル ・ ディ スク リ プタ ・ テーブル (GDT) 内にある LDT のセグメン ト ・ デ ィ スク リ プタの位置を探す。 次 に、 セグメン ト ・ デ ィ ス ク リ プタから LDTR に LDT のセグメン ト 範囲とベース ・ ア ド レ スをロー ドする。 DS、 ES、 SS、 FS、 GS、 CS の各セグメン ト ・ レ ジスタは この命令の影 響を受けない。 現在のタスクに対するタスク ・ ステー ト ・ セグメン ト (TSS) 内の LDTR フィールドも影響を受けない。 ソース ・オペランドが0 である場合は、 LDTR は無効と マー ク され、 LDT 内のデ ィ ス ク リプタへのすべての参照(LAR、 VERR、 VERW、 または LSL 命令に よ る も のを除 く ) に よ っ て一般保護例外 (#GP) が発生する。 オペラン ド ・ サイズ属性は、 この命令には効果を もたない。 LLDT 命令は、 オペレーティング・システム・ ソフトウェアで使用するために設けられ たものであり、 アプリケーション・プログラムでは使用してはならない。 さらに、 この 命令は保護モー ド でしか実行できない。 操作 IF Itanium System Environment THEN IA-32_Intercept(INST,LLDT); IF SRC(Offset) > descriptor table limit THEN #GP(segment selector); FI; Read segment descriptor; IF SegmentDescriptor(Type) ≠ LDT THEN #GP(segment selector); FI; IF segment descriptor is not present THEN #NP(segment selector); LDTR(SegmentSelector) ← SRC; LDTR(SegmentDescriptor) ← GDTSegmentDescriptor; 影響を受けるフラグ なし。 追加の Itanium ベース・システム環境例外 IA-32_Intercept 命令イ ン タ ーセプ ト 。 第 3 巻 : IA-32 基本命令リファレンス 3:637
- Seite 598 und 599: INT n/INTO/INT 3—Call to Interrup
- Seite 600 und 601: INT n/INTO/INT 3—Call to Interrup
- 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 650 und 651: LLDT—Load Local Descriptor Table
- Seite 652 und 653: LMSW—Load Machine Status Word オ
- 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
LLDT—Load Local Descriptor Table Register<br />
オペコード 命令 説明<br />
0F 00 /2 LLDT r/m16 セグメント・セレクタ r/m16 を LDTR にロードする。<br />
説明<br />
ソース ・オペランドをローカル・ディスク リプタ ・ テーブル・ レジスタ (LDTR) のセグ<br />
メン ト ・ セレクタ ・ フ ィ ールドにロー ドする。 ソース ・ オペランド ( 汎用レ ジ ス タ ま た<br />
はメモリ ・ ロケーション ) の内容は、 ロ ー カル ・ デ ィ ス ク リ プタ ・ テ ーブル (LDT) を指<br />
示先とするセグメント ・セレクタである。 セグメント ・セレクタがLDTR にロード され<br />
た後に、 プロセッサはそのセグメン ト ・ セレク タを使用して、 グローバル ・ ディ スク リ<br />
プタ ・ テーブル (GDT) 内にある LDT のセグメン ト ・ デ ィ スク リ プタの位置を探す。 次<br />
に、 セグメン ト ・ デ ィ ス ク リ プタから LDTR に LDT のセグメン ト 範囲とベース ・ ア ド レ<br />
スをロー ドする。 DS、 ES、 SS、 FS、 GS、 CS の各セグメン ト ・ レ ジスタは この命令の影<br />
響を受けない。 現在のタスクに対するタスク ・ ステー ト ・ セグメン ト (TSS) 内の LDTR<br />
フィールドも影響を受けない。<br />
ソース ・オペランドが0 である場合は、 LDTR は無効と マー ク され、 LDT 内のデ ィ ス ク<br />
リプタへのすべての参照(LAR、 VERR、 VERW、 または LSL 命令に よ る も のを除 く ) に<br />
よ っ て一般保護例外 (#GP) が発生する。<br />
オペラン ド ・ サイズ属性は、 この命令には効果を もたない。<br />
LLDT 命令は、 オペレーティング・システム・ ソフトウェアで使用するために設けられ<br />
たものであり、 アプリケーション・プログラムでは使用してはならない。 さらに、 この<br />
命令は保護モー ド でしか実行できない。<br />
操作<br />
IF Itanium System Environment THEN IA-32_Intercept(INST,LLDT);<br />
IF SRC(Offset) > descriptor table limit THEN #GP(segment selector); FI;<br />
Read segment descriptor;<br />
IF SegmentDescriptor(Type) ≠ LDT THEN #GP(segment selector); FI;<br />
IF segment descriptor is not present THEN #NP(segment selector);<br />
LDTR(SegmentSelector) ← SRC;<br />
LDTR(SegmentDescriptor) ← GDTSegmentDescriptor;<br />
影響を受けるフラグ<br />
なし。<br />
追加の Itanium ベース・システム環境例外<br />
IA-32_Intercept 命令イ ン タ ーセプ ト 。<br />
第 3 巻 : IA-32 基本命令リファレンス 3:637