24531904_j
24531904_j 24531904_j
CBW/CWDE ─ Convert Byte to Word/Convert Word to Doubleword オペコード 命令 説明 98 CBW AX ← AL の符号拡張 98 CWDE EAX ← AX の符号拡張 説明 符号拡張に よ り 、 ソ ー ス ・ オペラ ン ド のサイ ズを 2 倍に拡張する。 CBW ( バイ ト から ワードへの変換) 命令は、 ソ ー ス ・ オペラ ン ド の符号 ( ビット 7) を AH レジスタのすべ てのビ ッ ト にコ ピーする。 CWDE ( ワードからダブルワードへの変換) 命令は、 AX レジ スタ内のワー ドの符号( ビッ ト 15) を EAX レジスタの上位16 ビッ トにコピーする。 CBW および CWDE ニーモニッ クは同じオペコー ド を参照する。 CBW 命令は オペラ ン ド・サイズ属性が16 のとき、 またCWDE 命令は オペラ ン ド ・ サイズ属性が 32 のときに 使用す る こ と を目的 と してい る。 一部のアセンブ ラ には、 CBW が使用された と き はオペ ランド ・ サイズを 16 ビットに、 またCWDE が使用された と き は 32 ビ ッ ト に強制で き る ものがある。 その他のアセンブラは、 これらのニーモニックを同義語(CBW/CWDE) と して取 り 扱い、 ど ち ら のニ ー モニ ッ ク が使用 さ れて も 、 その と き のオペラ ン ド ・ サイ ズ 属性の設定を使用して変換対象の値のサ イ ズを判定で き る。 CWDE 命令は、 CWD ( ワードからダブルへの変換) 命令 と は異なる。 すなわち、 CWD 命令はデスティネーション・オペランドしてDX:AX レ ジ ス タ ・ ペアを使用す る のに対 し、 CWDE 命令はデス テ ィ ネ ー シ ョ ン と して EAX レジスタを使用する。 操作 IF OperandSize = 16 (* instruction = CBW *) THEN AX ← SignExtend(AL); ELSE (* OperandSize = 32, instruction = CWDE *) EAX ← SignExtend(AX); FI; 影響を受けるフラグ なし。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト 例外 ( すべての操作モード ) なし。 NaT レ ジ ス タ参照アボ ー ト 。 3:418 第 3 巻 : IA-32 基本命令リファレンス
CDQ ─ Convert Double to Quad 「CWD/CDQ - Convert Word to Double/Convert Double to Quad」 を参照のこ と。 第 3 巻 : IA-32 基本命令リファレンス 3:419
- 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 394 und 395: AAD ─ ASCII Adjust AX Before Divi
- 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 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 オペ
- Seite 444 und 445: CMPS/CMPSB/CMPSW/CMPSD—Compare St
- Seite 446 und 447: CMPS/CMPSB/CMPSW/CMPSD—Compare St
- Seite 448 und 449: CMPXCHG—Compare and Exchange (
- Seite 450 und 451: CMPXCHG8B—Compare and Exchange 8
- Seite 452 und 453: CPUID—CPU Identification オペ
- Seite 454 und 455: CPUID—CPU Identification ( 続き
- Seite 456 und 457: CPUID—CPU Identification ( 続き
- Seite 458 und 459: CWDE—Convert Word to Doubleword
- Seite 460 und 461: DAS—Decimal Adjust AL after Subtr
- Seite 462 und 463: DEC—Decrement by 1 ( 続き ) #AC
- Seite 464 und 465: DIV—Unsigned Divide ( 続き ) FI
- Seite 466 und 467: ENTER—Make Stack Frame for Proced
- Seite 468 und 469: ENTER—Make Stack Frame for Proced
- Seite 470 und 471: F2XM1—Compute 2 x -1 ( 続き )
- Seite 472 und 473: FADD/FADDP/FIADD—Add オペコー
- Seite 474 und 475: FADD/FADDP/FIADD—Add ( 続き )
- Seite 476 und 477: FBLD—Load Binary Coded Decimal
- Seite 478 und 479: FBSTP—Store BCD Integer and Pop
CDQ ─ Convert Double to Quad<br />
「CWD/CDQ - Convert Word to Double/Convert Double to Quad」 を参照のこ と。<br />
第 3 巻 : IA-32 基本命令リファレンス 3:419