■ このスレッドは過去ログ倉庫に格納されています
68K v.s. x86
- 936 :ナイコンさん:2016/02/03(水) 12:54:28.01 .net
- >>934
16ビットレジスタにメモリから16ビット値をロードするときは16ビット転送命令を使う、
という当たり前のことをやってれば、エンディアンなんてどっちでも同じ。
多バイト長の計算をするときにはリトルの方が分かりやすい。
'A'、'B'の2文字をパックしてワード値に変換するときなどは、
リトルの0x4241よりビッグの0x4142形式の方が分かりやすい気がする。
- 937 :ナイコンさん:2016/02/03(水) 15:48:17.88 .net
- マニュアル:RGBA32bitカラー
*(unsigned int*)p = r<<24 | g<<16 | b<<8 | 0xff ;
…あれ?
- 938 :ナイコンさん:2016/02/03(水) 17:42:34.98 .net
- >>934
ビッグエンディアンのほうがバイナリダンプ読みやすいじゃん。
- 939 :ナイコンさん:2016/02/03(水) 18:23:26.36 .net
- 読みやすいだけでプログラム書くのは混乱するとまでは言わないが、いちいち意識しないとダメなシーンが多かった。
ぶっちゃけかったりー。
- 940 :ナイコンさん:2016/02/03(水) 19:31:54.43 .net
- 混乱しているのはいつものことでしょ
「エンディアンガー」って言い訳できてむしろありがたいだろ
- 941 :ナイコンさん:2016/02/03(水) 20:34:43.23 .net
- >>938
いえ、別に…
- 942 :ナイコンさん:2016/02/03(水) 22:17:58.35 .net
- ?かいすやみ読
- 943 :ナイコンさん:2016/02/03(水) 23:41:31.99 .net
- バイナリダンプと日本語の区別つかない奴がいるのか。
- 944 :ナイコンさん:2016/02/04(木) 00:00:59.41 .net
- 01 00 これ読みやすいか?16進の100hと思うだろうが実は1なんだぜ。
- 945 :ナイコンさん:2016/02/04(木) 07:32:16.46 .net
- 処理するのはプロセッサーでプログラム書くのは人間出し。
人間が処理する訳じゃないから、人間が読みやすいより、人間が書きやすいほうが重要だろ。
- 946 :ナイコンさん:2016/02/04(木) 08:36:24.46 .net
- >>939
> いちいち意識しないとダメなシーンが多かった。
ダメ設計乙
エンディアン意識する必要があるのは外部(ストレージ含む)とのやり取り
そう言う処理があちこちにばらまかれてる時点で低脳
- 947 :ナイコンさん:2016/02/04(木) 19:18:23.55 .net
- アセンブラだとIOデバイス叩くとかするからね。
机上の知識だけじゃ何も作れないよ。
実務経験ない素人はこれだから。
- 948 :ナイコンさん:2016/02/04(木) 20:40:33.80 .net
- CPUが68Kでメモリマップドの16ビットI/Oがリトルエンディアンとか普通は無いんじゃね?w
- 949 :ナイコンさん:2016/02/05(金) 03:57:23.65 .net
- プロセッサがビッグエンディアンでデバイスがリトルエンディアンは、普通に当たり前にあったよ。
パソコンのアプリ作るだけの簡単なお仕事なら違うだろうけど。
「この回路、実績あるから」って一言で(設計期間短縮とかもあるんだろうけど)回路流用とかされると・・・
- 950 :ナイコンさん:2016/02/05(金) 07:22:57.81 .net
- 奇数アドレスがD0-7とかもうね、死ねよばか野郎、たよね。
- 951 :ナイコンさん:2016/02/05(金) 09:29:39.28 .net
- 全く根拠の無い説なんだけど
68Kが、インテルと比べて高速化出来なかったのは
ビッグエンディアンを採用した所為だと思っている。
ビッグエンディアンなんて、人間への見た目重視の
仕様だからな。
- 952 :ナイコンさん:2016/02/05(金) 12:30:58.77 .net
- >>944
>16進の100hと思うだろうが
思いません。
- 953 :ナイコンさん:2016/02/05(金) 14:43:07.86 .net
- >>949
> プロセッサがビッグエンディアンでデバイスがリトルエンディアンは、普通に当たり前にあったよ。
パソコンじゃなくても、設計期間短縮とかで既存の回路をそのまま流用するとか特別な理由がないかぎり、
普通はそんな設計にはしないと思うよ、わざわざそうする理由が無いもの。
- 954 :ナイコンさん:2016/02/05(金) 16:44:57.51 .net
- あとは今みたいにFPGAで手軽に回路組めなかったとか、カネや時間の制約が多かったとかあるな。
バブル弾ける直前ぐらいまでは富士通、松下、日電から仕事受けてだけど、どこも短納期ばっかりだったし仕様変更多かったし。
試作上がったあとでプロセッサー替えろとか言われてケツ変わらないとかもあったしなー。
改めて思い出すとむちゃくちゃな時代だったな。
- 955 :ナイコンさん:2016/02/05(金) 18:46:35.90 .net
- >ビッグエンディアンなんて、人間への見た目重視の
>仕様だからな。
メモリダンプの仕様をアドレスの大きいものから小さいものへの順にすればいいだけ。
一般の数字の表記は大きい桁から小さい桁の順が普通であり、メモリダンプもそれに倣うのが正しい。大きい桁の値が大きいアドレスに格納されるリトルエンディアンは仕様として正しい。
- 956 :ナイコンさん:2016/02/05(金) 19:16:03.03 .net
- ビッグエンディアンの利点はメモリダンプだけってよく判る。
他に利点なし。
- 957 :ナイコンさん:2016/02/05(金) 19:29:40.75 .net
- リトルエンディアンは最初8bitCPUのZ-80のLD HL,xxxx命令
で見た時には面食らったものだったけど、実際に自分で
多倍長コード(2Byte以上)を組んでみてその合理性に納得したので
x86でも自然だったなあ。
ビッグエンディアンのDumpの見易さもx86で気の利いたDebbugerなら
Byteだけでは無くWordやDword表示(場合によってはfloatやdoubleも可)を
選択出来たから絶対的なアドバンテージでは無かった。
逆にビッグエンディアンでCのunion宣言やキャスト宣言はどーするんだろうと
当時疑問に思ったものだ。
- 958 :ナイコンさん:2016/02/05(金) 20:43:45.67 .net
- ネットワークバイトオーダーはビッグエンディアンであり、最上位ビットから転送するのがスタンダードであるが
リトルエンディアン信奉者は8bitマイコンの世界から出てこられず全てを8bitの積み重ねでしか理解できない
だからx86のような汚らしい拡張を有り難がり続ける気違いばかりなのだ
- 959 :ナイコンさん:2016/02/05(金) 20:50:12.82 .net
- >>956
> ビッグエンディアンの利点はメモリダンプだけ
それはそうなんだが、昔は見る機会が多かったし、デバッガどころか箱でダンプが届くとかもあったからビッグエンディアンでないとやってられなかったんよ
- 960 :ナイコンさん:2016/02/05(金) 20:57:42.65 .net
- >>958
> 最上位ビットから転送するのがスタンダードであるが
話はずれるが、たいていのシリアル通信は最下位ビットの方が先に転送する
- 961 :ナイコンさん:2016/02/05(金) 21:06:50.14 .net
- >>936
char2文字処理はDOS時代にJIS漢字コード⇔Shift JISで多用したな。
でもアライメント制限の無いx86はそのままWordをStore出来たけど
68kはByte単位に戻してStoreしなければならなかったのでWordにする
メリットは無い。
- 962 :ナイコンさん:2016/02/05(金) 21:26:44.63 .net
- 68kのアセンブラって、btstは0がLSBでbftstは0がMSBって設計者はシャブでもやってたのかと思う。
- 963 :ナイコンさん:2016/02/05(金) 21:58:09.72 .net
- >>961
突っ込まれる前に。
x86はWordでStoreする前に上位下位をXCHGする必要があるのを忘れていた。
- 964 :ナイコンさん:2016/02/06(土) 04:47:52.08 .net
- ネットワークバイトオーダーがビッグエンディアンなのは「目の前にあるマシンのアーキテクチャがビッグエンディアンだったから、という程度の理由でしかない」で技術的な優劣は関係なかったんだよなぁ。
- 965 :ナイコンさん:2016/02/06(土) 09:43:06.70 .net
- 結局ビッグエンディアンのメリットってダンプの読みやすさだけか。
- 966 :ナイコンさん:2016/02/06(土) 12:15:33.69 .net
- ビッグエンディアンのメリットを書いているのを見ると
可読性以外だと形変換で大きな型(例:long)を小さい型(short)の
範囲に丸める(圧縮)場合を例示しているのが多いが
RZ丸め(Round Zero;切捨て)しか想定されておらず一般的な
RN丸め(Round Nearest:最近偶数丸め)やRP,RM丸め(有向丸め)
だと意味が無い特殊ケースなんだよな。
まあリトルエンディアンのアドレスがどの型でも確実に下位の
同一データを指し示しているのに対抗するための反例のようだが
もう少しまともな実例を示して欲しい。
- 967 :ナイコンさん:2016/02/07(日) 18:52:43.26 .net
- 本当にビッグエンディアンの技術面での優位性の主張って無いみたいだな。
自分の経験で多倍長整数処理の中で比較処理だけは優位になるのになぁ。
- 968 :ナイコンさん:2016/02/07(日) 22:00:18.54 .net
- ロングワードをワードx2に改竄する時インデックスを付加する必要がなくなる分1ワード稼げてよかったよ
- 969 :ナイコンさん:2016/02/08(月) 18:43:55.36 .net
- ビッグエンディアンの利点で挙げられている>>966の数値丸めの例や
>>968の言うインデックス不要という例が判らない。
もう少し具体例を出して貰わないと意味不明だ。
- 970 :ナイコンさん:2016/02/08(月) 19:07:25.60 .net
- 仮にビッグエンディアンのx86、リトルエンディアンの68Kとか想定してみても、
それで性能が変わるとは全く思えないわけで…どっちでもいいんじゃね?
- 971 :ナイコンさん:2016/02/08(月) 19:18:35.26 .net
- 8086がbig endianなら普及に失敗したけどね。
- 972 :ナイコンさん:2016/02/08(月) 19:23:07.69 .net
- >>971
> 8086がbig endianなら普及に失敗したけどね。
より正確には8080、Z80と同じエンディアンじゃなかったら…だな。
- 973 :ナイコンさん:2016/02/08(月) 22:04:24.95 .net
- >>970
それゆえに不毛な宗教論争と言われる所以で。
ただその内容が論理vs感性で全くかみ合ってないところが…
>>969
整数値で考えるならばlong⇒shortの丸めなんてC言語風に表現すれば
>>16に過ぎないのだがこの整数値が固定小数点数として使われているならば
多少はその目的を納得することができるのかもしれない。
ちなみにIBMは伝統的なビッグエンディアンを採用するメーカーだが
System360あたりで採用されてた浮動小数点は倍精度(64bit:符号1,指数7,仮数56bit)の内
上位4byteを取れば単精度(32bit:符号1,指数7,仮数24bit)へのRZ丸め型変換になる。
まあIEEE754を使う68kやx86では意味の無い技法だが。
- 974 :ナイコンさん:2016/02/08(月) 22:11:40.62 .net
- >>972
そこはPowerPCみたいにバイエンディアンで。
ただ最新Chipはビッグのみ見たいだけど。
そういえばIntelのItaniumは共同開発のHPとの関係で
バイエンディアンだったそうな。
- 975 :ナイコンさん:2016/02/08(月) 22:22:58.09 .net
- そもそもエンデアンを切り替えられるプロセッサーがある時代に何を言ってるんだよ…
- 976 :ナイコンさん:2016/02/08(月) 22:24:06.22 .net
- 無駄にトランジスタ使いやがって。
- 977 :ナイコンさん:2016/02/09(火) 07:18:08.10 .net
- もしIBMがDATA形式の互換を目的にIBM PCのCPU選択をビッグエンディアンCPU
にしていたら今の状況は大きく異なっていただろうな。
IBM PC以前のIBM 5100はどっちを採用していたのだろうか?
- 978 :ナイコンさん:2016/02/09(火) 18:24:16.07 .net
- ダンプリスト見やすいってのがよくわからん
- 979 :ナイコンさん:2016/02/09(火) 21:26:07.73 .net
- ビッグエンディアンだけになったらアップルに見捨てられたよなPowerPC。
- 980 :ナイコンさん:2016/02/09(火) 21:48:55.98 .net
- アップルってほんと最低だよな。
- 981 :ナイコンさん:2016/02/09(火) 21:53:08.77 .net
- SonyとAppleは、自分達の権益を守るのに
余念が無いからな。
- 982 :ナイコンさん:2016/02/10(水) 06:45:46.16 .net
- 68kがリトルエンディアンだったとしても奇数番地へのワードアクセスで例外起こすアレがジャマになると思うんだよな。
個人的には68kがリトルエンディアンだったら、68kへの評価は上がるな。
総レス数 982
242 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200