アカウント名:
パスワード:
32bit x 4core ってオチじゃないだろうな?
アキュムレータは、128bitだけど外部バスは32bitのx86-128sxなんてCPUが・・・出たらイヤだなあ(^^;
それはMC68000 [wikipedia.org]のことかー!
ごめん。ボケなのか天然さんなのか判別つかん(^^;;
私がX68kにリスペクトしてる(別記事で何度か触れてます)ことを知ったうえでボケてるなら笑えるところですが、それだったらwikipediaにリンクなんか張らないですよねぇ?
元発言ではsxって書いてるんで、まぁ分かる人は分かるでしょうけど、80386SXを指してるんですけど、アイディア自体はもっと前に8088なんていう『8086アーキテクチャで外部バスは8ビット』なんて石もありましたよね
もしかして、ギャグの解説をさせるという羞恥プレイ狙いですか??(^^;;;
もっと嫌なアーキテクチャを思いついてしまった。
『128bit CPUではあるが、アドレス指定は32bitセグメントレジスタ4段重ねでリニアなメモリ空間は4GBごとに壁が存在する。これは、既存のx86-32bitとの互換のための設計である』
128bit CPUでアセンブラ書こうってヒトも少ないでしょうけど、farポインタとか復活するんですぜ。今の若い子はあの苦労をしるまい。ヒヒヒ
そもそも「○ビットCPU」とはどこで判断するのかが難しいですよね。
ザイログ Z80は、ALU4bit、レジスタ8bit、データバス8bit、通称8bitインテル 8086は、ALU16bit、レジスタ16bit、データバス16bit、通称16bitインテル 8088は、ALU16bit、レジスタ16bit、データバス8bit、自称8bit、IBM呼称16bitモトローラ 68000は、ALU16bit、レジスタ32bit、データバス16bit、通称16bitモトローラ 68008は、ALU16bit、レジスタ32bit、データバス8bit、通称16bitインテル 80386DXは、ALU32bit、レジスタ32bit、データバス32bit、通称32bitインテル 80386SXは、ALU32bit、レジスタ32bit、データバス16bit、通称32bitAMD Athlon64は、ALU64bit、レジスタ64bit、データバス128bit、通称64bitIntel Pentium4(EM64T対応版)は、ALU32bit、レジスタ64bit、データバス128bit、通称64bit?32bit?
8088は、インテルは最初8bitと言ってたし、外部に出てるデータバスの幅=CPUのビット数のつもりだったんでしょうけど、IBM PC が、8088 を採用したけど16bitって謳っちゃった。EM64T対応なPentium4は32bitと64bitのどっちで呼んでもあながち間違いでなさそうだし…
もはや、CPUが何bitかなんて、メーカーの自称が全てだと思います。
一番しっくりくるのはALUのbit数なんだけど、それだとZ80が4bitCPUになってしまうんだよなぁ。逆に、ハード見ずにアーキテクチャだけ見れば、Z80は8bitになるけど、68000は32bitになっちゃうし、データバスの幅で見れば、Z80は8bit、68000は16bitになるんだけど、キャッシュを内蔵した今時のCPUだとデータバス幅なんて飾りみたいなもんだし…難しいものです。
taka2さん、コメントどうもです。
>もはや、CPUが何bitかなんて、メーカーの自称が全てだと思います。
このストーリーに限定して言えば、WindowsがCPUをどう扱うか?が論点だと思いますので、アーキテクチャで見るのが妥当なんじゃないかと思ってます。古いC言語しか知らん人間なので恐縮ですが
#include <stdio.h> int main(void){ printf("%d\n", sizeof(int)); return 0;}
を走らせて、16と答えるのが正解なんでしょう。
# これだと『CPUアーキテクチャ』じゃなくて『CPU, OS, コンパイラ含めた# システムアーキテクチャ』になってしまうので、若干話がズレてるのは自# 覚ありです
ちなみに、手元で
と答えましたよ。# どなたかx86-64+linuxとか、スノーレパードなんかでどうなるかやってみ# てくれないかな(^^;
ところで別の話ですが、128bit CPUのインストラクションセットってどんなモンになるんでしょうかね?(^^;;ゼッパチとか68kとか8086なんかでアセンブラしこしこ書いてた人間的には
『アセンブラの命令なんて、move, 四則演算(add, sub, mul, div)、論理演算(and, or, xor, not)、シフト・ローテート、比較(cmp)、ジャンプ、特権命令だけありゃ十分だ』(かなり誇張)
な感覚なんで128ビットもあっても余りまくってこまってしまいそう(をい)
さらに蛇足:128ビット化する目的ですけど、『現状のパーソナルコンピュータの延長』で考える限りにおいては、速度的な問題はあんまり関係なくなってるんじゃないですかねぇ?必要性がありそうなのは、リニアなメモリ空間の確保だと思います。# 別枝で言及されてますが
DVD一枚の容量が4.7GB。ISOイメージにでもすれば4GB超えますし、昨今では、TVの録画データでも5GBとか10GBのファイルが平気でできますからねぇ。
扱いたいデータが確保できるメモリ空間より大きい場合の手法なんかはそれこそ大昔からあって、farポインタだの、オーバーレイファイルだの、、、ただ、若い子流に言うと、それらはバッドノウハウなんだろうし、そう考えるとCPUが128bit化するメリットの一番は、メモリ空間がより広大になる、が一番なんだと思います。別発言で書いた『128bit CPUなんだけどセグメントアドレッシングで4GBごとに壁がある』なんてのは趣味が悪いジョーク以外のなにものでもないでしょう(^^;
Windows32bit機において、メモリが4GB以上積めるようになってきた一昨年くらいからRAMDISKなんかがハヤりだして、『これ、なんてデジャビュ?』とか思っていたクチでして。。。また、若い子が嬉々として自慢してくれたんですが、おぢさん的には『いや、その昔には、EMSとかUMBとかXMSとか在ってだな・・・・』とか語っちゃったんですけどネ
PS.in (#1652387) AC氏 wrote:> 世の中には16ビットより32ビットのほうが何かが偉いかのように考えている> 頭のおかしな人がいて困ったものです。
まぁ、馬力が大きい車がエライ、とか画素数の多いほうがデジカメはエライ、なんて考えてるひとは世の中いっぱいいますから(^^;;このスレッドでは、そういう話にはなってないと思ってますし、私自身もそういうつもりはないです。『適材適所』ですよね。選択肢があるなら、今でもゼッパチのが適しているコンピューティングってのは絶対あると思いますよ。(蛇足の追記で申し訳ないっす)
以上、長々と失礼m(..)m
64ビットプロセッサ上のC言語のデータモデルには
などがあり、sizeof(int)だけを見ても分かりません。Snow LeopardはLP64を採用しているので、gcc -arch x86_64でコンパイルするとsizeof(int)は32になります。WindowsはLLP64。
128ビットプロセッサ時代にはさらにややこしくなるんでしょう。
> gcc -arch x86_64でコンパイルするとsizeof(int)は32になります。
「4になります」と書くつもりでした。失敗。
↑なんかバカっぽいな
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs
対象となるCPUは? (スコア:1)
# GPU なら 128bit 以上のを聞いたよう...
Re: (スコア:1)
32bit x 4core ってオチじゃないだろうな?
Re: (スコア:1)
アキュムレータは、128bitだけど外部バスは32bitのx86-128sxなんてCPUが・・・
出たらイヤだなあ(^^;
♪潔くカッコよく生きてゆこう
Re: (スコア:0)
それはMC68000 [wikipedia.org]のことかー!
Re:対象となるCPUは? (スコア:1)
ごめん。ボケなのか天然さんなのか判別つかん(^^;;
私がX68kにリスペクトしてる(別記事で何度か触れてます)ことを知ったうえで
ボケてるなら笑えるところですが、それだったらwikipediaにリンクなんか
張らないですよねぇ?
元発言ではsxって書いてるんで、まぁ分かる人は分かるでしょうけど、80386SXを
指してるんですけど、アイディア自体はもっと前に8088なんていう
『8086アーキテクチャで外部バスは8ビット』なんて石もありましたよね
もしかして、ギャグの解説をさせるという羞恥プレイ狙いですか??(^^;;;
♪潔くカッコよく生きてゆこう
Re:対象となるCPUは? (スコア:1)
もっと嫌なアーキテクチャを思いついてしまった。
『128bit CPUではあるが、アドレス指定は32bitセグメントレジスタ4段重ねで
リニアなメモリ空間は4GBごとに壁が存在する。
これは、既存のx86-32bitとの互換のための設計である』
128bit CPUでアセンブラ書こうってヒトも少ないでしょうけど、farポインタとか
復活するんですぜ。今の若い子はあの苦労をしるまい。ヒヒヒ
♪潔くカッコよく生きてゆこう
Re:対象となるCPUは? (スコア:1)
そもそも「○ビットCPU」とはどこで判断するのかが難しいですよね。
ザイログ Z80は、ALU4bit、レジスタ8bit、データバス8bit、通称8bit
インテル 8086は、ALU16bit、レジスタ16bit、データバス16bit、通称16bit
インテル 8088は、ALU16bit、レジスタ16bit、データバス8bit、自称8bit、IBM呼称16bit
モトローラ 68000は、ALU16bit、レジスタ32bit、データバス16bit、通称16bit
モトローラ 68008は、ALU16bit、レジスタ32bit、データバス8bit、通称16bit
インテル 80386DXは、ALU32bit、レジスタ32bit、データバス32bit、通称32bit
インテル 80386SXは、ALU32bit、レジスタ32bit、データバス16bit、通称32bit
AMD Athlon64は、ALU64bit、レジスタ64bit、データバス128bit、通称64bit
Intel Pentium4(EM64T対応版)は、ALU32bit、レジスタ64bit、データバス128bit、通称64bit?32bit?
8088は、インテルは最初8bitと言ってたし、外部に出てるデータバスの幅=CPUのビット数のつもりだったんでしょうけど、IBM PC が、8088 を採用したけど16bitって謳っちゃった。
EM64T対応なPentium4は32bitと64bitのどっちで呼んでもあながち間違いでなさそうだし…
もはや、CPUが何bitかなんて、メーカーの自称が全てだと思います。
一番しっくりくるのはALUのbit数なんだけど、それだとZ80が4bitCPUになってしまうんだよなぁ。
逆に、ハード見ずにアーキテクチャだけ見れば、Z80は8bitになるけど、68000は32bitになっちゃうし、
データバスの幅で見れば、Z80は8bit、68000は16bitになるんだけど、キャッシュを内蔵した今時のCPUだとデータバス幅なんて飾りみたいなもんだし…
難しいものです。
Re:対象となるCPUは? (スコア:1)
taka2さん、コメントどうもです。
>もはや、CPUが何bitかなんて、メーカーの自称が全てだと思います。
このストーリーに限定して言えば、WindowsがCPUをどう扱うか?
が論点だと思いますので、アーキテクチャで見るのが妥当なんじゃないかと思っ
てます。
古いC言語しか知らん人間なので恐縮ですが
を走らせて、16と答えるのが正解なんでしょう。
# これだと『CPUアーキテクチャ』じゃなくて『CPU, OS, コンパイラ含めた
# システムアーキテクチャ』になってしまうので、若干話がズレてるのは自
# 覚ありです
ちなみに、手元で
と答えましたよ。
# どなたかx86-64+linuxとか、スノーレパードなんかでどうなるかやってみ
# てくれないかな(^^;
ところで別の話ですが、128bit CPUのインストラクションセットってどんなモ
ンになるんでしょうかね?(^^;;
ゼッパチとか68kとか8086なんかでアセンブラしこしこ書いてた人間的には
『アセンブラの命令なんて、move, 四則演算(add, sub, mul, div)、論理演算
(and, or, xor, not)、シフト・ローテート、比較(cmp)、ジャンプ、特権命令
だけありゃ十分だ』(かなり誇張)
な感覚なんで128ビットもあっても余りまくってこまってしまいそう(をい)
さらに蛇足:
128ビット化する目的ですけど、『現状のパーソナルコンピュータの延長』で
考える限りにおいては、速度的な問題はあんまり関係なくなってるんじゃない
ですかねぇ?
必要性がありそうなのは、リニアなメモリ空間の確保だと思います。
# 別枝で言及されてますが
DVD一枚の容量が4.7GB。ISOイメージにでもすれば4GB超えますし、昨今では、
TVの録画データでも5GBとか10GBのファイルが平気でできますからねぇ。
扱いたいデータが確保できるメモリ空間より大きい場合の手法なんかはそれこ
そ大昔からあって、farポインタだの、オーバーレイファイルだの、、、
ただ、若い子流に言うと、それらはバッドノウハウなんだろうし、そ
う考えると
CPUが128bit化するメリットの一番は、メモリ空間がより広大になる、が一番
なんだと思います。
別発言で書いた『128bit CPUなんだけどセグメントアドレッシングで4GBご
とに壁がある』なんてのは趣味が悪いジョーク以外のなにものでもないでしょ
う(^^;
Windows32bit機において、メモリが4GB以上積めるようになってきた一昨年く
らいからRAMDISKなんかがハヤりだして、『これ、なんてデジャビュ?』とか思っ
ていたクチでして。。。
また、若い子が嬉々として自慢してくれたんですが、おぢさん的には
『いや、その昔には、EMSとかUMBとかXMSとか在ってだな・・・・』とか語っ
ちゃったんですけどネ
PS.
in (#1652387) AC氏 wrote:
> 世の中には16ビットより32ビットのほうが何かが偉いかのように考えている
> 頭のおかしな人がいて困ったものです。
まぁ、馬力が大きい車がエライ、とか画素数の多いほうがデジカメはエライ、
なんて考えてるひとは世の中いっぱいいますから(^^;;
このスレッドでは、そういう話にはなってないと思ってますし、私自身もそう
いうつもりはないです。
『適材適所』ですよね。選択肢があるなら、今でもゼッパチのが適しているコ
ンピューティングってのは絶対あると思いますよ。
(蛇足の追記で申し訳ないっす)
以上、長々と失礼m(..)m
♪潔くカッコよく生きてゆこう
Re: (スコア:0)
世の中には16ビットより32ビットのほうが何かが偉いかのように考えている頭のおかしな人がいて困ったものです。
68000のアーキテクチャはやはり16ビットを基本としていると思います。32ビット拡張された16ビットアーキテクチャですね。
(例えばDBcc命令をどう定義するかなどはアーキテクチャ定義時にさんざん議論されたことでしょう)
逆に80386は32ビットアーキテクチャを16ビット側に拡張してあるように思います。
(32ビットモードだけでも完結しているということです)
別にどちらが偉いというものでもありません。理由があってそう設計したというだけです。
Re:対象となるCPUは? (スコア:2)
64ビットプロセッサ上のC言語のデータモデルには
などがあり、sizeof(int)だけを見ても分かりません。
Snow LeopardはLP64を採用しているので、gcc -arch x86_64でコンパイルするとsizeof(int)は32になります。WindowsはLLP64。
128ビットプロセッサ時代にはさらにややこしくなるんでしょう。
Re: (スコア:0)
Re:対象となるCPUは? (スコア:1)
> gcc -arch x86_64でコンパイルするとsizeof(int)は32になります。
「4になります」と書くつもりでした。失敗。
Re: (スコア:0)
↑なんかバカっぽいな