dポイントプレゼントキャンペーン実施中!

調べたのですが,いまいち納得いく回答に行き当たらなかったので,自ら質問させていただきます.

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??
今まではもはや「そういうもの」と思っていましたが,答えられないのもいやだしなんか納得いかないのでお願いします.

A 回答 (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と呼んでいるために、更に紛らわしくなっているのが現状です。
    • good
    • 0
この回答へのお礼

長文で丁寧にご説明いただき,ありがとうございます.

単に「x86」といってもいろいろと歴史がある由来だったんですね.
長い歴史の中で定着したことであれば,今更あーだこーだ言ってもしょうがない感じですね.

素朴な疑問が解消されスッキリしました.
細かい知識ですが,知れてよかったです.

お礼日時:2009/11/12 16:04

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とか)
簡便な文字列で、固有の仕様を示せる表記方法は
各所で熟慮の上で定められています。(そのはず)
    • good
    • 0

一応、誰も説明してないとこの説明を補足すると



x64は元々x86-64が略される形で一般化した用語。

>「x86」について調べたところ,昔のIntel製CPUの型番であったということはわかりましたが,それがWindows7を含めた現在のWindowsのbitにどう関係するのでしょうか?
アーキテクチャーのベースがそのころから変わってないから
そのころのアーキテクチャーが拡張・拡張とされて今のCPUがある。

それとインテルにはもう一つ64bitのCPUがある。
IA-64と言われている物。
x86(x64)系の物はIA-32と言われている。
でこの2つはまったく別のアーキテクチャーで互換性は無し
    • good
    • 0
この回答へのお礼

>アーキテクチャーのベースがそのころから変わってないから
>そのころのアーキテクチャーが拡張・拡張とされて今のCPUがある。
やはり昔の人は頭がよかったんですね.

Windowsシリーズでは,32bit版OSはWindows7が最後らしいので,こういう話はもう数年(正確にはWindows7のサポート期間まで?)で消えるのでしょうか・・・.

お礼日時:2009/11/12 13:50

[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と言っている様です。
    • good
    • 0
この回答へのお礼

回答ありがとうございます.

先に64bitCPUを出したのはAMDなんですね.

インテルが何を思ってCPUの型番をxx86に統一したか知りませんが,32bitをx86というのはもはや偶然ということですよね?
仮にCPUの型番がxx22とかxx77だったら32bitはx22とかx77とかいう名前がついてたんでしょうか・・・
x64は64bitでわかりやすいのだから,32bitCPUもxx32シリーズとかにすればもっとわかりやすかったわけですね.

お礼日時:2009/11/12 13:40

こんにちは。



 下記サイトをご参照ください。
  http://www.intel.co.jp/jp/intel/museum/hof/index …
  多少細かすぎるきらいはありますが、CPUの歴史がわかります。
  8080なんて、とても懐かしい。。。

では。
    • good
    • 0

x86 は 8086系CPUと言うことを示しています



これ、実は 16ビットCPUなんですけどね
後の 32ビットCPUの元になったモノです
インテル社のCPUは概ね
 8086 → 80286 → 386 → 486 → Pentium → …
と続いてきました
この中で 386以降が 32ビットの CPUです
ですので、86の前にxをひとつ付けて x86 と表現するわけです

たしかに知らない人には分かりにくい表現ですね
    • good
    • 0
この回答へのお礼

32bitのCPUの型番から,Windows(OS)の32bitにそのx86が当てられてるということなんですよね.
思いのほか「深くない」というか,「なるほど」とは思えない理由ですよね・・・
OSの内部構造とかまでは知りませんが,つまりそういうこととは直接関係がない,という認識でいいのでしょうか?
「x86シリーズのCPUが32bitだから,OSの32bitもx86って呼んでしまおう」といういわばノリですかw

経緯というか歴史を知って,改めて「そういうもの」という説明が一番妥当という気がします.

なんか納得できませんが,ありがとうございました.

お礼日時:2009/11/12 13:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!