1WORDってなんなんだー!
wordには2つ定義があって、レジスタサイズをもとにするもの(古典)とword=16bitとするもの(DOS由来)どっちにしろこのの発言は不思議感がある RT @siritori: あっ32bitアーキテクチャならDWORDって32bitか
2011-05-08 04:46:23@siritori 前者だったら DWORD(double word) は64bitじゃまいか ゚+.(・ω・)゚+.゚
2011-05-08 04:47:56自然語長 = バス幅 = 汎用レジスタ幅 な時代なら、WORD を定義できるが。NT Kernel は DWORD とか使ってないはず。ULONG, ULONG_PTR みたいなのばっか
2011-05-08 04:48:42@kosaki55tea @siritori 歴史的にはもっと複雑です。まずDOSは8086-basedなので語長=レジスタ長=16bitになっています。
2011-05-08 05:24:37@kosaki55tea @siritori かつてIBM System/360のPrinciples of Operation(PoO)が2/4/8はhalfword/word/doublewordと定め、MIPSやSPARCもこれを踏襲しました。
2011-05-08 05:26:23@kosaki55tea @siritori System/3x0、MIPS、SPARCなどは後に64-bit化しますがwordは32ビットのままになります。
2011-05-08 05:27:31@kosaki55tea @siritori 次にDECのPDP-11が16-bitマシンとしてスタートしword=16bitと定義しました。途中で32-bit化されましたがwordの定義を変えません。2/4/8はword/longword/quadwordと定義されました。
2011-05-08 05:28:21@kosaki55tea @siritori 最初から64-bitだったAlpha AXPはDECの定義を踏襲しました。レジスタ長は産まれた時から64ビットwordでしたが、wordは16ビットのままになります。
2011-05-08 05:29:30@kosaki55tea @siritori そしてVAXに遅れて32-bit化を果たした80386もやっぱりwordの定義を変えずbyte/word/dword/qwordになるのはご存知の通り。
2011-05-08 05:31:42