このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第731回

インテルの新命令セットでついに16bitモードが廃止に

2023年08月07日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/) 編集●北村/ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

汎用レジスターを増量する「APX」

 Intel APX(Advanced Performance Extensions)は、X86-Sと異なり提案ではなく、将来実装することが明らかにされている。こちらの基本的なアイディアは「64bit環境で利用できる汎用レジスターの数を増やすことで、より効率的にプログラムを実行できるようにしよう」というものだ。

 もともとx64(というよりx86-64)になった時、それまで8個だった汎用レジスターが16個に増えている。もっとも8086由来の8個の汎用レジスターのうち、プログラムからある程度自由に使えるレジスターは実質的には4つ(AX/CX/DX/BX)しかなかったので、汎用レジスターが16個に増えたことでプログラムから自由に使えるレジスターは12個になった計算で、3倍に増えたことでこれまでスタックしてカバーしていたレジスター不足の状況が大幅に緩和されることになった。

 これに加え、新しくNDD(New Data Destination)を利用した3オペランド命令も定義されることになった。NDDとはなにか? というと、これまでx86の命令セットは基本2オペランドだった。例えば加算(ADD)命令の場合、従来は以下のフォーマットになっていた。

ADD reg1, reg2

 この場合の処理は以下の計算式になる。

reg1 = reg1 + reg2

 つまりレジスターreg1の内容とレジスターreg2の内容を加算して、その結果をreg1に上書きする格好だ。この時点で、元のreg1の内容は失われる格好になる。これに対してNDDを利用した3オペランド命令では以下のようになる。

ADD reg1, reg2, reg3

 処理は以下の計算式になる。

reg1 = reg2 + reg3

 今度はレジスターreg2とreg3の内容を加算し、その結果をreg1に保存する。つまりADDを行なってもreg2の内容が上書きされることはなくなった。

 もともとx86でこの3オペランド命令がサポートされなかった理由は、8086でレジスターの数を節約するためである。当時の回路規模では、レジスターを多数実装するとそれだけでトランジスタ数が大きく増えてしまい不経済だったからだ。

 したがって、仮に命令を実行した後でも元のレジスターの内容を保存しておきたい場合は、あらかじめスタックなどにその値を格納しておいてから命令を実行し、その後スタックから復帰させるという方法が用いられていた。

 このあたりはx64の実装で利用できるレジスターの数が増えたことでだいぶ緩和された(スタックに格納しなくても、別の汎用レジスターに格納できる場合が増えた)が、どうせレジスターにコピーするくらいなら最初から3オペランド命令にした方が無駄にレジスター間コピーをする手間が省けて楽である。そこで汎用レジスター数の増加と併せて、この3オペランド命令のサポートが追加された格好だ。

 ただこれ、既存のx86/x64とはまるで互換性がない。そこでこの3オペランド命令に関しては、REX2という新しい命令Prefixが付くことになった。もともとx86では、命令Prefixと呼ばれる拡張フォーマットがサポートされている。

 例えば80386の場合、0x41では16bitのINC(インクリメント:1加算する)命令だが、0x66 0x41では32bit命令のINCになる。0x41はINCのオペコード(命令を示す値)だが、0x66がOperand Size Prefixで、この場合は32bitのINC命令を実行するようになるというわけだ。

 ほかにもAddress Size PrefixやSegment Size Prefix、Repeat Prefix、REX Prefix、VEX Prefixなどがある。このうちREX Prefixはx64に合わせて導入されたもので、これが冒頭に付くと続く命令は64bitとして扱うというものだが、今回はREX2という新しいプレフィックスが用意された格好だ。

 余談だが、REX Prefixは0x40~0x47を利用する。この値、オペコードとしては16bitのINC命令であった。つまり64bit拡張を行なう際に16bitのINC命令を潰した格好だ。同様にREX2 Prefixは0xD5を利用するが、これは16bitのAAD(0xD5 0x0A)ないしAAX(0xD5)で使われていたオペコードで、これを潰してREX2に割り当てた格好になる。

カテゴリートップへ

この連載の記事
1
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
¥26,880
2
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥36,979
3
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
¥134,377
4
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、16GB ユニファイドメモリ、512GBのSSD ストレージ - スペースブラック
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、16GB ユニファイドメモリ、512GBのSSD ストレージ - スペースブラック
¥238,747
5
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥39,800

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,880
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥980
4
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
7
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
8
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,555
9
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
¥1,980
10
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
¥880

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン