- ベストアンサー
なんでx86???
調べたのですが,いまいち納得いく回答に行き当たらなかったので,自ら質問させていただきます. Windowsにおいて,よく「32bit版」とかいいますよね.最近ではメモリの容量や処理速度から「64bit版」も注目されております. そこで気になるのはこの××bitを,32bitならx86,64bitはそのままx64と言ったりすること. これはMicrosoftの公式ダウンロードページでもこういう表記があります. 64bit=x64に違和感はありませんが,32bit=x86というのがよくわかりません. この32bit=x86,64bit=x64を知らない人は,86bitというものがあると勘違いしそうな紛らわしさだと思いますが・・・ 「x86」について調べたところ,昔のIntel製CPUの型番であったということはわかりましたが,それがWindows7を含めた現在のWindowsのbitにどう関係するのでしょうか? 「フロッピードライブがA:,B:とあったから今でもローカルはC:」みたいな感覚でしょうかw?? 今まではもはや「そういうもの」と思っていましたが,答えられないのもいやだしなんか納得いかないのでお願いします.
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
どうもこの手の話は紆余曲折の結果なので、 あまりすっきりとはしていないのですが、 それでも正確に理解するために、文章を読むときには、 その言葉が何を指しているのか確認しながら読むといいですよ。 特に、CPUのアーキテクチャー(命令セット)の名称、 OSやドライバの名称、CPUの製品名が混じっているので、 きちんと分類することをお勧めします。 CPUの製品名: 8086,80286,80386,80486,80586(Pentium) 総称してx86系のCPUと呼びます。 一社の商品名が一般化したのですから、 偶然といえば偶然です。 アーキテクチャー: アーキテクチャーとは、そのCPUが実行できる命令セットという意味です。 上記、80x86 が実行できる命令セットを、x86アーキテクチャーと呼んでいますが、 このうち、80386以降が実行できる 32ビットの命令セットを IA32 (Intel Architecture 32) と呼びます。 ここまでは、AMD も Intel互換で開発してきましたが、 それを64ビットに拡張する際、互換路線をやめ、独自に開発するようになりました。 AMDによる64ビット拡張は、当初、x86-64 で、 以下のように呼び名が変わりました。 x86-64 -> AMD64 -> AMD64 ISA また、Intelによる64ビット拡張は、当初 IA32-e で、 以下のように呼び名が変わりました。 IA32-e -> EM64T -> Intel 64 以上のように、x86/IA32/x86-64/AMD64/IA32-e/EM64T/Intel 64は アーキテクチャーの名称ですが、x86という言葉は、CPUを指す場合もあり、 アーキテクチャーを指す場合もあり、非常に紛らわしいのです。 OS、ドライバの名称: AMD64 と Intel64 の両アーキテクチャーは 実質は Intelが折れて、先に出したAMDの互換路線を採用したことで、 ソフトウエアは、ほとんどの場合、どちらでも動作することになりました。 この、AMD64 と Intel64 のどちらでも動作する64ビットOSのことを Microsoftはx64版などと呼んでいます。 それならば、32ビット版を x32 と呼べば非常にすっきりしたのですが、 x86と呼んでいるために、更に紛らわしくなっているのが現状です。
その他の回答 (5)
- vaidurya
- ベストアンサー率45% (2714/5983)
intel系だけがCPUだというわけでは無いので、x86,x64共に、32bitや64bitだけでなく それがintelのi386系統のものであることを意味しています。 この表記方法はMS社のルールで、少し曖昧な意味で使われています。 intelにはIA-32,IA-64といった規格がありますが… IA-32の互換性を持つAMD製CPUは本来IA-32ではありません。 ですから、32bit版はIA-32版と呼ぶのは誤りとも言えます。 代わる総称はx86しか無いと言っていいでしょう。 厳密には、x86は、i8086を内包しているCPUと考えることができます。 現在のWindowsPCの基礎となった、IBM PC/XTに使われたのがi8088で i8088はi8086の廉価版でした。その後PC/XTの互換機の発展を経て IBM PC/ATでi80286が採用され、COMPAQがそれをi80386まで引き上げました。 現代のWindowsPCの直接の先祖がこのCOMPAQのi80386マシンです。 間にあったi80186はチャンスを与えられない子でした。 i80286の時代にAMD等はセカンドソースライセンスを取得し それを根拠としてi80386時代に、互換プロセッサー戦略に打って出ました。 それはi486が採用した技術をi386互換プロセッサーに採用するもので ここで成功したAMDらは、i486互換プロセッサーに着手します。 で、紆余曲折があり、i486はiDX,iSXといった改称を行ない。 次のプロセッサではi586の名称は使われず、歴史に名高いPentiumとなりました。 ですから、ライセンス解釈の問題などがなければ 今ここにあるのは、i986になっていたかもしれません。 (まぁ無理に割り当てても、CoreDuoが986になるので破綻しています) x86というのは偶然ではなく、伝統的なintelのCPU系列を指す記号です。 今もi7の基礎に8086の機能は内包されているし 8086時代のMS-DOSが普通に動くのです。これがintelの成功を支えた互換性維持というものです。 x64はAMD64(EM64T,Intel 64)とIA-64であるItaniumを まとめて指す言葉になることもあるようです。 (実際にはItanium版はWindows Serverにのみ存在し、異なる識別子が付されます) こういったOSでの呼び名の決定には、実際の商品構成が影響し 厳密な区別を無用とすることがあるわけです。 WindowsMobile等ではARMやSHなどが使われますし WindowsNTにも、一時期PowerPC版やαAXP版を開発した時期がありました。 そういうものなので、単に32bitや64bitを表す表現は、妥当なものでは無いのです。 PowerPCには32bitと64bit(Windows撤退後)があり、アルファは17年前に生まれた古い64bitCPUです。 intel自身にも、IA-32と互換性の無い32bitCPUがありましたし、IA-64は、i960によく似た徒花なのかもしれません。 互換性を犠牲にしたIA-64の成功を許さなかったのがAMD64です。 EM64Tとしての路線復帰は、結果的にユーザー利益となりました。 対応ハードウェアの多いOSだと、対応CPUが10系統を超え アーキテクチャとして20種類以上にも及びます。(NetBSDとか) 簡便な文字列で、固有の仕様を示せる表記方法は 各所で熟慮の上で定められています。(そのはず)
- oraora777
- ベストアンサー率20% (56/268)
一応、誰も説明してないとこの説明を補足すると x64は元々x86-64が略される形で一般化した用語。 >「x86」について調べたところ,昔のIntel製CPUの型番であったということはわかりましたが,それがWindows7を含めた現在のWindowsのbitにどう関係するのでしょうか? アーキテクチャーのベースがそのころから変わってないから そのころのアーキテクチャーが拡張・拡張とされて今のCPUがある。 それとインテルにはもう一つ64bitのCPUがある。 IA-64と言われている物。 x86(x64)系の物はIA-32と言われている。 でこの2つはまったく別のアーキテクチャーで互換性は無し
お礼
>アーキテクチャーのベースがそのころから変わってないから >そのころのアーキテクチャーが拡張・拡張とされて今のCPUがある。 やはり昔の人は頭がよかったんですね. Windowsシリーズでは,32bit版OSはWindows7が最後らしいので,こういう話はもう数年(正確にはWindows7のサポート期間まで?)で消えるのでしょうか・・・.
- アプ(@skm36522)
- ベストアンサー率49% (80/161)
[x86] x86に関しては#1の方が記載されたとおり、Intel社のCPUの製品名が元となっています。 後から出た製品は、今までの機能を基本的に継承している為、製品名も下2桁を86で統一していた様です。 8086、80286、i386、i486、Pentium(i586) AMD社のCPUもPentiumの機能を基本的に継承した製品である為、 32bit版CPUを総称してx86と言っている様です。 [x64] x64は、x86を元にAMD社が開発したCPUで、製品名をAMD64としています。 IntelのCPUもAMD64とほぼ同性能のCPUで、製品名をEM64Tとしている為、 64bit版CPUを総称してx64と言っている様です。
お礼
回答ありがとうございます. 先に64bitCPUを出したのはAMDなんですね. インテルが何を思ってCPUの型番をxx86に統一したか知りませんが,32bitをx86というのはもはや偶然ということですよね? 仮にCPUの型番がxx22とかxx77だったら32bitはx22とかx77とかいう名前がついてたんでしょうか・・・ x64は64bitでわかりやすいのだから,32bitCPUもxx32シリーズとかにすればもっとわかりやすかったわけですね.
- akina_line
- ベストアンサー率34% (1124/3287)
こんにちは。 下記サイトをご参照ください。 http://www.intel.co.jp/jp/intel/museum/hof/index.htm 多少細かすぎるきらいはありますが、CPUの歴史がわかります。 8080なんて、とても懐かしい。。。 では。
- Cupper
- ベストアンサー率32% (2123/6444)
x86 は 8086系CPUと言うことを示しています これ、実は 16ビットCPUなんですけどね 後の 32ビットCPUの元になったモノです インテル社のCPUは概ね 8086 → 80286 → 386 → 486 → Pentium → … と続いてきました この中で 386以降が 32ビットの CPUです ですので、86の前にxをひとつ付けて x86 と表現するわけです たしかに知らない人には分かりにくい表現ですね
お礼
32bitのCPUの型番から,Windows(OS)の32bitにそのx86が当てられてるということなんですよね. 思いのほか「深くない」というか,「なるほど」とは思えない理由ですよね・・・ OSの内部構造とかまでは知りませんが,つまりそういうこととは直接関係がない,という認識でいいのでしょうか? 「x86シリーズのCPUが32bitだから,OSの32bitもx86って呼んでしまおう」といういわばノリですかw 経緯というか歴史を知って,改めて「そういうもの」という説明が一番妥当という気がします. なんか納得できませんが,ありがとうございました.
お礼
長文で丁寧にご説明いただき,ありがとうございます. 単に「x86」といってもいろいろと歴史がある由来だったんですね. 長い歴史の中で定着したことであれば,今更あーだこーだ言ってもしょうがない感じですね. 素朴な疑問が解消されスッキリしました. 細かい知識ですが,知れてよかったです.