24531904_j
24531904_j 24531904_j
SAHF—Store AH into Flags オペコード 命令 Clocks 説明 9E SAHF 2 9E SF、ZF、AF、PF、CF を AH から EFLAGS レジスタに ロードする。 説明 EFLAGS レジスタのSF、 ZF、 AF、 PF、 CF フラグに AH レジスタの対応するビッ ト ( そ れぞれビ ッ ト 7、 6、 4、 2、 0) からの値をロードする。 レジスタ AH のビ ッ ト 1、 3、 5 は 無視 さ れる。 EFLAGS レジスタの対応する予約ビット (1、 3、 5) は、 以下の 「操作」 の 項に示すよ う に残る。 操作 EFLAGS(SF:ZF:0:AF:0:PF:1:CF) ← AH; 影響を受けるフラグ SF、 ZF、 AF、 PF、 CF フラグに AH レジスタからの値がロード される。 EFLAGS レジス タのビッ ト 1、 3、 5 は、 それぞれ 1、 0、 および 0 の値がセ ッ ト される。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト 例外 ( すべての操作モード ) なし。 NaT レ ジ ス タ参照アボ ー ト 。 3:724 第 3 巻 : IA-32 基本命令リファレンス
SAL/SAR/SHL/SHR—Shift オペコード 命令 説明 D0 /4 SAL r/m8,1 r/m8 に 2 を 1 回掛ける。 D2 /4 SAL r/m8,CL r/m8 に 2 を CL 回掛ける。 C0 /4 ib SAL r/m8,imm8 r/m8 に 2 を imm8 回掛ける。 D1 /4 SAL r/m16,1 r/m16 に 2 を 1 回掛ける。 D3 /4 SAL r/m16,CL r/m16 に 2 を CL 回掛ける。 C1 /4 ib SAL r/m16,imm8 r/m16 に 2 を imm8 回掛ける。 D1 /4 SAL r/m32,1 r/m32 に 2 を 1 回掛ける。 D3 /4 SAL r/m32,CL r/m32 に 2 を CL 回掛ける。 C1 /4 ib SAL r/m32,imm8 r/m32 に 2 を imm8 回掛ける。 D0 /7 SAR r/m8,1 r/m8 を 2 で 1 回符号付き除算する。* D2 /7 SAR r/m8,CL r/m8 を 2 で CL 回符号付き除算する。* C0 /7 ib SAR r/m8,imm8 r/m8 を 2 で imm8 回符号付き除算する。* D1 /7 SAR r/m16,1 r/m16 を 2 で 1 回符号付き除算する。* D3 /7 SAR r/m16,CL r/m16 を 2 で CL 回符号付き除算する。* C1 /7 ib SAR r/m16,imm8 r/m16 を 2 で imm8 回符号付き除算する。* D1 /7 SAR r/m32,1 r/m32 を 2 で 1 回符号付き除算する。* D3 /7 SAR r/m32,CL r/m32 を 2 で CL 回符号付き除算する。* C1 /7 ib SAR r/m32,imm8 r/m32 を 2 で imm8 回符号付き除算する。* D0 /4 SHL r/m8,1 r/m8 に 2 を 1 回掛ける。 D2 /4 SHL r/m8,CL r/m8 に 2 を CL 回掛ける。 C0 /4 ib SHL r/m8,imm8 r/m8 に 2 を imm8 回掛ける。 D1 /4 SHL r/m16,1 r/m16 に 2 を 1 回掛ける。 D3 /4 SHL r/m16,CL r/m16 に 2 を CL 回掛ける。 C1 /4 ib SHL r/m16,imm8 r/m16 に 2 を imm8 回掛ける。 D1 /4 SHL r/m32,1 r/m32 に 2 を 1 回掛ける。 D3 /4 SHL r/m32,CL r/m32 に 2 を CL 回掛ける。 C1 /4 ib SHL r/m32,imm8 r/m32 に 2 を imm8 回掛ける。 D0 /5 SHR r/m8,1 r/m8 を 2 で 1 回符号なし除算する。 D2 /5 SHR r/m8,CL r/m8 を 2 で CL 回符号なし除算する。 C0 /5 ib SHR r/m8,imm8 r/m8 を 2 で imm8 回符号なし除算する。 D1 /5 SHR r/m16,1 r/m16 を 2 で 1 回符号なし除算する。 D3 /5 SHR r/m16,CL r/m16 を 2 で CL 回符号なし除算する。 C1 /5 ib SHR r/m16,imm8 r/m16 を 2 で imm8 回符号なし除算する。 D1 /5 SHR r/m32,1 r/m32 を 2 で 1 回符号なし除算する。 D3 /5 SHR r/m32,CL r/m32 を 2 で CL 回符号なし除算する。 C1 /5 ib SHR r/m32,imm8 r/m32 を 2 で imm8 回符号なし除算する。 注 : * IDIV と同じ除算形式ではないことに注意する。負の無限大方向に丸められる。 第 3 巻 : IA-32 基本命令リファレンス 3:725
- 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 (
- Seite 702 und 703: POP—Pop a Value from the Stack (
- Seite 704 und 705: POPA/POPAD—Pop All General-Purpos
- Seite 706 und 707: POPF/POPFD—Pop Stack into EFLAGS
- Seite 708 und 709: PUSH—Push Word or Doubleword onto
- Seite 710 und 711: PUSH—Push Word or Doubleword onto
- Seite 712 und 713: PUSHA/PUSHAD—Push All General-Pur
- Seite 714 und 715: PUSHF/PUSHFD—Push EFLAGS Register
- Seite 716 und 717: RCL/RCR/ROL/ROR-—Rotate ( 続き
- Seite 718 und 719: RCL/RCR/ROL/ROR-—Rotate ( 続き
- Seite 720 und 721: RDMSR—Read from Model Specific Re
- Seite 722 und 723: RDPMC—Read Performance-Monitoring
- Seite 724 und 725: RDTSC—Read Time-Stamp Counter (
- Seite 726 und 727: REP/REPE/REPZ/REPNE /REPNZ—Repeat
- Seite 728 und 729: RET—Return from Procedure オペ
- Seite 730 und 731: RET—Return from Procedure ( 続
- Seite 732 und 733: RET—Return from Procedure ( 続
- Seite 734 und 735: ROL/ROR—Rotate 「RCL/RCR/ROL/ROR
- Seite 738 und 739: SAL/SAR/SHL/SHR—Shift ( 続き )
- Seite 740 und 741: SAL/SAR/SHL/SHR—Shift ( 続き )
- Seite 742 und 743: SBB—Integer Subtraction with Borr
- Seite 744 und 745: SCAS/SCASB/SCASW/SCASD—Scan Strin
- Seite 746 und 747: SETcc—Set Byte on Condition オ
- Seite 748 und 749: SETcc—Set Byte on Condition ( 続
- Seite 750 und 751: SGDT/SIDT—Store Global/Interrupt
- Seite 752 und 753: SHLD—Double Precision Shift Left
- Seite 754 und 755: SHLD—Double Precision Shift Left
- Seite 756 und 757: SHRD—Double Precision Shift Right
- Seite 758 und 759: SIDT—Store Interrupt Descriptor T
- Seite 760 und 761: SLDT—Store Local Descriptor Table
- Seite 762 und 763: SMSW—Store Machine Status Word (
- Seite 764 und 765: STD—Set Direction Flag オペコ
- Seite 766 und 767: STI—Set Interrupt Flag ( 続き )
- Seite 768 und 769: STOS/STOSB/STOSW/STOSD—Store Stri
- Seite 770 und 771: STOS/STOSB/STOSW/STOSD—Store Stri
- Seite 772 und 773: STR—Store Task Register ( 続き
- Seite 774 und 775: SUB—Subtract ( 続き ) 保護モ
- Seite 776 und 777: TEST—Logical Compare ( 続き )
- Seite 778 und 779: VERR, VERW—Verify a Segment for R
- Seite 780 und 781: WAIT/FWAIT—Wait オペコード
- Seite 782 und 783: WBINVD—Write Back and Invalidate
- Seite 784 und 785: WRMSR—Write to Model Specific Reg
SAL/SAR/SHL/SHR—Shift<br />
オペコード 命令 説明<br />
D0 /4 SAL r/m8,1 r/m8 に 2 を 1 回掛ける。<br />
D2 /4 SAL r/m8,CL r/m8 に 2 を CL 回掛ける。<br />
C0 /4 ib SAL r/m8,imm8 r/m8 に 2 を imm8 回掛ける。<br />
D1 /4 SAL r/m16,1 r/m16 に 2 を 1 回掛ける。<br />
D3 /4 SAL r/m16,CL r/m16 に 2 を CL 回掛ける。<br />
C1 /4 ib SAL r/m16,imm8 r/m16 に 2 を imm8 回掛ける。<br />
D1 /4 SAL r/m32,1 r/m32 に 2 を 1 回掛ける。<br />
D3 /4 SAL r/m32,CL r/m32 に 2 を CL 回掛ける。<br />
C1 /4 ib SAL r/m32,imm8 r/m32 に 2 を imm8 回掛ける。<br />
D0 /7 SAR r/m8,1 r/m8 を 2 で 1 回符号付き除算する。*<br />
D2 /7 SAR r/m8,CL r/m8 を 2 で CL 回符号付き除算する。*<br />
C0 /7 ib SAR r/m8,imm8 r/m8 を 2 で imm8 回符号付き除算する。*<br />
D1 /7 SAR r/m16,1 r/m16 を 2 で 1 回符号付き除算する。*<br />
D3 /7 SAR r/m16,CL r/m16 を 2 で CL 回符号付き除算する。*<br />
C1 /7 ib SAR r/m16,imm8 r/m16 を 2 で imm8 回符号付き除算する。*<br />
D1 /7 SAR r/m32,1 r/m32 を 2 で 1 回符号付き除算する。*<br />
D3 /7 SAR r/m32,CL r/m32 を 2 で CL 回符号付き除算する。*<br />
C1 /7 ib SAR r/m32,imm8 r/m32 を 2 で imm8 回符号付き除算する。*<br />
D0 /4 SHL r/m8,1 r/m8 に 2 を 1 回掛ける。<br />
D2 /4 SHL r/m8,CL r/m8 に 2 を CL 回掛ける。<br />
C0 /4 ib SHL r/m8,imm8 r/m8 に 2 を imm8 回掛ける。<br />
D1 /4 SHL r/m16,1 r/m16 に 2 を 1 回掛ける。<br />
D3 /4 SHL r/m16,CL r/m16 に 2 を CL 回掛ける。<br />
C1 /4 ib SHL r/m16,imm8 r/m16 に 2 を imm8 回掛ける。<br />
D1 /4 SHL r/m32,1 r/m32 に 2 を 1 回掛ける。<br />
D3 /4 SHL r/m32,CL r/m32 に 2 を CL 回掛ける。<br />
C1 /4 ib SHL r/m32,imm8 r/m32 に 2 を imm8 回掛ける。<br />
D0 /5 SHR r/m8,1 r/m8 を 2 で 1 回符号なし除算する。<br />
D2 /5 SHR r/m8,CL r/m8 を 2 で CL 回符号なし除算する。<br />
C0 /5 ib SHR r/m8,imm8 r/m8 を 2 で imm8 回符号なし除算する。<br />
D1 /5 SHR r/m16,1 r/m16 を 2 で 1 回符号なし除算する。<br />
D3 /5 SHR r/m16,CL r/m16 を 2 で CL 回符号なし除算する。<br />
C1 /5 ib SHR r/m16,imm8 r/m16 を 2 で imm8 回符号なし除算する。<br />
D1 /5 SHR r/m32,1 r/m32 を 2 で 1 回符号なし除算する。<br />
D3 /5 SHR r/m32,CL r/m32 を 2 で CL 回符号なし除算する。<br />
C1 /5 ib SHR r/m32,imm8 r/m32 を 2 で imm8 回符号なし除算する。<br />
注 :<br />
* IDIV と同じ除算形式ではないことに注意する。負の無限大方向に丸められる。<br />
第 3 巻 : IA-32 基本命令リファレンス 3:725