Googleは結果を表示しません。
誰でも知っていますか?
X はペアを意味し、少なくとも 8080 に戻ります。8 ビットのレジスタ B、C、D、E、H、L (とりわけ) があり、ペア (BC、DE、および HL) で使用することもできました。BC と DE のペアは、主に 16 ビット演算に使用されました。HL ペアは通常、メモリ アドレスを保持していました。X のペアの使用例:
LXI D,12ABH ; "load pair immediate"
DCX B ; "decrement pair"
STAX D ; "store A (indirect) at pair"
8086 に早送りします。レジスタ AL、AH、BL、BH、CL、CH、DL、DH があり、8080 と同様に、AX、BX、CX、DX のペアで使用できます。
他の人が指摘したように、32 ビット レジスタ名の E はextendedを意味します。
私の知る限り、何もありません。汎用レジスターの略です。
16 ビットの AX レジスタは、AH (上位バイト) および AL (下位バイト) としてアドレス指定できます。
EAX レジスタは、AX レジスタの 32 ビット バージョンです。E は拡張の略です。
8086 では、AX レジスタは AH と AL の組み合わせでした。同様に、BX は BH や BL などでした。80386 では、16 ビット レジスタを 32 ビット レジスタに結合するのではなく、Intel は各レジスタに 16 ビットを追加しました。「AL」という名前は、最初の文字名の付いたレジスタのビット 0 ~ 7 を指し、「AH」はビット 8 ~ 15 を指し、「AX」はビット 0 ~ 15 を指します。「EAX」という名前は、レジスタの 32 ビットすべてを指すようになりました。
興味深いことに、他のほとんどの 16 ビットおよび 32 ビット プロセッサは、レジスタの上位部分または下位部分だけにアクセスする同等の手段を提供していません。このようなアクセスを可能にするコストは、ハードウェアの複雑さと命令エンコード ビットの両方でかなりのものであり、今日では、レジスタの 8 ビット部分を別のレジスタの 8 ビット部分に追加する機能は非常に困難です。そのようなハードウェアまたは命令エンコードスペースが置かれる可能性のある他の多くの用途よりも役に立ちません。一方で、そのような能力があれば役に立つ場合もまだあります。
ミハイが言うように、それは単なる命名規則です。
ただし、「X」は「値を入力する」ためによく使用され、数学者が方程式で選択する最初の変数名として一般的に使用されていること、およびこれらの特定のレジスタが汎用であることを考えると (ESP とは対照的に、拡張 (32 ビット) スタック ポインターまたは EIP 拡張命令ポインター) が、おそらく「B」ではなく X が選択される理由です。
私が考えることができる1つの考えられる理由は、それが「正常な」状態ではないことを示すことです. 電子機器のシリアル通信について話すとき、データ ラインの 1 つが何でもよい場合、その状態は 0 または 1 のどちらでもない/両方/どちらでもないので、X であると言うかもしれません。