2009-03-07 5 views
11

マシンワードは常に同じか、それともマシンアーキテクチャに依存しますか? 単語の意味はWORDですか?WORDは何ビットあり、それは異なるアーキテクチャーで一定ですか?

+1

winapiでは、ワードは16ビットWindowsに固定されているため、マシンサイズが大きいアーキテクチャでも16ビットに固定されています。だからWindows HLLプログラムでは、wordは16ビットなので、間違いなく文脈に敏感です。 Guffaはすでに言っているように、x86アセンブラには同じ16ビートが存在します。 –

答えて

23

マシンのワードサイズはアーキテクチャによって異なりますが、オペレーティングシステムがアプリケーションをどのように実行しているかによっても異なります。

たとえば、アプリケーションは64ビットアプリケーション(64ビットマハイナ語)または32ビットアプリケーション(32ビットマシン語)として実行できます。したがって、マシン語のサイズは同じマシンであっても異なる場合があります。

WORDという用語は、使用方法によって意味が異なります。機械語、または特定のサイズのタイプを意味します。 x86アセンブリ言語WORDDOUBLEWORDDWORD)およびQUADWORDQWORD)は、マシンのワードサイズに関係なく、2,4,8バイトのサイズで使用されます。

10

単語は通常、CPUの「ネイティブ」データサイズです。すなわち、16ビットCPUでは、ワードは16ビットであり、32ビットCPUでは32ワードであり、以下同様である。

もちろん、ワードは16ビット幅です(x86はもともと16ビットCPUだったので)、DWORDは32ビット(32ビットCPUになったため)です。 QWORDは64ビットです(これは現在64ビットの拡張機能がオンになっているためです)

+2

QWORDを32ビットマシンで使用することはできません。 – selurvedu

+2

@selurvedu古いコメントですが、これを将来にわたって見つけられるかもしれない人々のためのものです。あなたは可能性があります。 Intelプロセッサは、QWORDを使用できるようにする64ビットMMXレジスタを持つ傾向があり、メモリから64ビットのデータを読み書きできます(エンディアンを念頭に置いて)。 –

+0

@ SomeGuyのエンディアンについてのポイントに関しては、[この投稿](https://stackoverflow.com/q/7865511/2636454)はその理解に役立ちます。 – GDP2

3

マシンのアーキテクチャによって異なります。 This文書ではこれに関するいくつかの基本について説明しています。

1

ワードの16ビット(2バイト)は、x86ではユニバーサルです。

0

私の理解では、特定のマシン上で1つのアクションでCPUに押し込むことができるビット数はWORDであるため、8ビットアーキテクチャでは8ビットで、最新の64ビットアーキテクチャそれは64ビットです。

+1

8ビットの土地では、バイトを意味するときに決して言わなかったでしょう。一般的な単語の定義は、9ビットのバイトと18ビットの単語を持つシステムであっても、単純に「2バイト」です。 PDP-10はそこに気をつけます... – RBerteig

2

はい。

[OK]を私は少し明確にさせてください。私たちが記憶の言葉を話していると仮定すると、2つの広い定義があります。

最初に、単語は、ハードウェアでアトミックにアクセスできる1つのアイテムの自然なサイズです。これはプラットフォームに依存するサイズですが、通常は16,32、または64ビットですが、他のサイズが野生で見つかりました。

第2に、16ビット値を具体的に意味するためによく使用されます。このコンテキストでは、DWORDは32ビットの値を意味するのがわかります。この使用法は、x86プラットフォーム、特にWindowsでは一般的ですが、DEC PDP-11とVAX、およびMotorola 68000子孫でも使用されていました。使用目的は、文脈に依存している

占い...

1

こと約32ビットthissと64ビットにyappinすべてのあなたの若者:あなたが知っている、があったとx86の家族以外のマシンアーキテクチャです。 PDP-11は、40ビットの単語を有していた。

しかし、最も簡単な答えは、Wikipediaを検索することです。

+0

誰かがユーモアのセンスを失っている、または評判のポイントを取り除かなければならない?いずれにせよ、楽しんでください。 –

+0

PDP-11には16ビットワードがありました。 PDP-10(DEcSystem-10)は36ビットワードを持っていました。私は40ビットの言葉でDECアーキテクチャを認識していませんが、非常に多くのものがありました! –

+0

PDP-11(少なくともRT-11を実行しているものだが、他のDEC OSでも使用されていると思う)は、6.3ファイル名を3単語に収めることができるRad50という奇妙な文字セットを使用した。ワード。 DECは奇妙なデータパッキングを好んだ;-)(私は私のオフィスでPDP-11を走らせている) – RBerteig

1

小文字の "単語"はアーキテクチャによって異なります。

Windows SDKで定義されている大文字の「WORD」は16ビットです。

同様に: "DWORD" - (ダブルワード)32ビット。 "QWORD" ... 64ビット。

関連する問題