C言語なら俺に聞け 161at TECHC言語なら俺に聞け 161 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト800:デフォルトの名無しさん 23/10/07 18:12:07.87 mvcCmF0H0.net まあでもネットワークバイトオーダーはビッグエンディアンになっちゃってるんだよね。 これはこれで理由があるのかも知れないが、とにかく80系CPUだとひっくり返さねばならなくなった。 結局C言語だとそういったCPUの違いを吸収するために htonl(), ntohl() のようなマクロまたは関数を使うことになると。 801:デフォルトの名無しさん 23/10/07 18:15:49.27 BCZCKqNS0.net それは、そういう風に決めないと、処理出来ないからだろう 802:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 693e-B5Nq) 23/10/07 18:24:53.16 pov02R//0.net 通信系はなぁ……。 結局は通信相手と同じ規約を使うしか仕方がないから 個々のコンピュータ (アーキテクチャ) にとっては不自然になることもある。 モダンなプロトコルはリトルエンディアンを採用している事例もそれなりにあるよ。 803:デフォルトの名無しさん (ワッチョイ 31b0-fCO4) 23/10/07 18:45:29.52 2aizzJpQ0.net そのエンディアン変換が68000は面倒で 例えばZ80なら16ビットを上位バイト下位バイトレジスタ間で3命令で交換できるのに 68000はメモリに16ビット書き込み、8ビットシフト、メモリから8ビット読み出しという手順をしなければならない(確か) 万能のCPUなんてないものだと思ったよ 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch