24531904_j
24531904_j 24531904_j
AAD ─ ASCII Adjust AX Before Division オペコード 命令 説明 D5 0A AAD 除算前に AX を ASCII 調整する。 説明 調整結果に対して除算を行った場合に正しいアンパ ッ ク BCD 値が生じ る よ う に、 2 桁の アンパッ ク BCD 数 (AL レジスタの下位桁と AH レ ジ ス タ の上位桁 ) を調整する。 AAD 命令は、 AX レジスタの調整結果の値をアンパックBCD 値で除算 (2 進除算 ) する DIV 命令の直前に実行した と き に限 り 有効である。 AAD 命令は、 AL レジスタの値を (AL + (10*AH)) に設定し、 次に AH レジスタを 00H に クリアする。 したがって、 AX レジスタの値は、 AL および AH レジスタの元のパックさ れていない 2 桁の数に等価な 2 進値に等しい。 操作 tempAL ← AL; tempAH ← AH; AL ← (tempAL + (tempAH ∗ imm8)) AND FFH; AH ← 0 即値 (imm8) は命令の第 2 バイ ト から与えられる。 この値は、 通常のアセンブリでは 0AH (10 進数では 10) である。 ただし、 この即値を変更して、 異なる結果を得るこ と もできる。 影響を受けるフラグ SF、 ZF、 PF フラグは、 結果に従ってセット される。 OF、 AF、 CF フラグは未定義であ る。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト 例外 ( すべての操作モード ) なし。 NaT レ ジ ス タ参照アボ ー ト 。 3:382 第 3 巻 : IA-32 基本命令リファレンス
AAM ─ ASCII Adjust AX After Multiply オペコード 命令 説明 D4 0A AAM 乗算後に AX を ASCII 調整する。 説明 2 つのアンパ ッ ク BCD 値間の乗算結果を調整して、 1 対のアンパ ッ ク BCD 値を作成す る。 AX レジスタは、 この命令の暗黙のソース兼デスティネーション ・オペランドであ る。 AAM 命令は、 2 つのアンパ ッ ク BCD 値を乗算 (2 進乗算 ) し、 ワ ー ド の結果を AX レジスタにストアする MUL 命令の次に実行した と き に限 り 有効であ る。 次に、 AAM 命 令が AX レ ジ ス タ の内容を調整して、 2 桁のアンパ ッ ク BCD 結果に ま と める。 操作 tempAL ← AL; AH ← tempAL / imm8; AL ← tempAL MOD imm8; 即値 (imm8) は命令の第 2 バイ ト から与えられる。 この値は、 通常のアセンブリでは 0AH (10 進数では 10) である。 ただし、 この即値を変更して、 異なる結果を得るこ と もできる。 影響を受けるフラグ SF、 ZF、 PF フ ラ グが結果に従 っ てセ ッ ト される。 OF、 AF、 CF フ ラ グは未定義。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト 例外 ( すべての操作モード ) なし。 NaT レ ジ ス タ参照アボ ー ト 。 第 3 巻 : IA-32 基本命令リファレンス 3:383
- Seite 343 und 344: 4.6.1.1 Floating-point Multiply Add
- Seite 345 und 346: 4.6.4 近似 4.6.4.1 Floating-point
- Seite 347 und 348: 4.6.6 マージと論理 F9 4.6.7
- Seite 349 und 350: 4.6.9 その他の F ユニット
- Seite 351 und 352: 4.7.2 ロング型即値 64 移動
- Seite 353 und 354: 4.8 即値の生成 表 4-74 は、
- Seite 355 und 356: 0 リソースと依存関係のセ
- Seite 357 und 358: は、 シ リ アル化の要件
- Seite 359 und 360: 表 5-2. リソース別に編成
- Seite 361 und 362: 表 5-2. リソース別に編成
- Seite 363 und 364: 表 5-2. リソース別に編成
- Seite 365 und 366: 表 5-2. リソース別に編成
- Seite 367 und 368: 表 5-3. リソース別に編成
- Seite 369 und 370: 表 5-3. リソース別に編成
- Seite 371 und 372: 5.3.5 依存関係表で参照さ
- Seite 373 und 374: 5.4 サポートに関する表 表
- Seite 375 und 376: 表 5-5. 命令クラス ( 続き )
- Seite 377 und 378: 表 5-5. 命令クラス ( 続き )
- Seite 379 und 380: 表 5-5. 命令クラス ( 続き )
- Seite 381: 第 II 部 : IA-32命令セット
- Seite 384 und 385: ま たは浮動小数点命令を
- Seite 386 und 387: • rel16 および rel32 - アセ
- Seite 388 und 389: • レ ジ ス タ名は暗黙に
- Seite 390 und 391: 図 1-1. BIT[EAX,21] のビット
- Seite 392 und 393: 1.2.7 仮想 8086 モード例外
- Seite 396 und 397: AAS ─ ASCII Adjust AL After Subtr
- Seite 398 und 399: ADC ─ Add with Carry ( 続き )
- Seite 400 und 401: ADD ─ Add ( 続き ) 保護モー
- Seite 402 und 403: AND ─ Logical AND ( 続き ) 保
- Seite 404 und 405: ARPL ─ Adjust RPL Field of Segmen
- Seite 406 und 407: BOUND ─ Check Array Index Against
- Seite 408 und 409: BSF ─ Bit Scan Forward ( 続き )
- Seite 410 und 411: BSR ─ Bit Scan Reverse ( 続き )
- Seite 412 und 413: BT ─ Bit Test オペコード 命
- Seite 414 und 415: BTC ─ Bit Test and Complement オ
- Seite 416 und 417: BTR ─ Bit Test and Reset オペ
- Seite 418 und 419: BTS ─ Bit Test and Set オペコ
- Seite 420 und 421: CALL ─ Call Procedure オペコ
- Seite 422 und 423: CALL ─ Call Procedure ( 続き )
- Seite 424 und 425: CALL ─ Call Procedure ( 続き )
- Seite 426 und 427: CALL ─ Call Procedure ( 続き )
- Seite 428 und 429: CALL ─ Call Procedure ( 続き )
- Seite 430 und 431: CBW/CWDE ─ Convert Byte to Word/C
- Seite 432 und 433: CLC ─ Clear Carry Flag オペコ
- Seite 434 und 435: CLI ─ Clear Interrupt Flag オペ
- Seite 436 und 437: CLTS—Clear Task-Switched Flag in
- Seite 438 und 439: CMOVcc—Conditional Move オペコ
- Seite 440 und 441: CMOVcc—Conditional Move ( 続き
- Seite 442 und 443: CMP—Compare Two Operands オペ
AAD ─ ASCII Adjust AX Before Division<br />
オペコード 命令 説明<br />
D5 0A AAD 除算前に AX を ASCII 調整する。<br />
説明<br />
調整結果に対して除算を行った場合に正しいアンパ ッ ク BCD 値が生じ る よ う に、 2 桁の<br />
アンパッ ク BCD 数 (AL レジスタの下位桁と AH レ ジ ス タ の上位桁 ) を調整する。 AAD<br />
命令は、 AX レジスタの調整結果の値をアンパックBCD 値で除算 (2 進除算 ) する DIV<br />
命令の直前に実行した と き に限 り 有効である。<br />
AAD 命令は、 AL レジスタの値を (AL + (10*AH)) に設定し、 次に AH レジスタを 00H に<br />
クリアする。 したがって、 AX レジスタの値は、 AL および AH レジスタの元のパックさ<br />
れていない 2 桁の数に等価な 2 進値に等しい。<br />
操作<br />
tempAL ← AL;<br />
tempAH ← AH;<br />
AL ← (tempAL + (tempAH ∗ imm8)) AND FFH;<br />
AH ← 0<br />
即値 (imm8) は命令の第 2 バイ ト から与えられる。 この値は、 通常のアセンブリでは 0AH<br />
(10 進数では 10) である。 ただし、 この即値を変更して、 異なる結果を得るこ と もできる。<br />
影響を受けるフラグ<br />
SF、 ZF、 PF フラグは、 結果に従ってセット される。 OF、 AF、 CF フラグは未定義であ<br />
る。<br />
追加の Itanium ベース・システム環境例外<br />
Itanium アーキテクチャ ・<br />
レジスタ ・ フォルト<br />
例外 ( すべての操作モード )<br />
なし。<br />
NaT レ ジ ス タ参照アボ ー ト 。<br />
3:382 第 3 巻 : IA-32 基本命令リファレンス