
こんばんわ,
現在Redhat Linux 9の環境でCの勉強をしています。
ファイルから読み取ったデータがBIGENDIANの形なので,それをLITTILE ENDIANになおして使用したいのですが,できるだけ高速に変換するアルゴリズムを考えています。
変換するデータは1byte(これは関係なし),2byte,4byte,でそれぞれunsignedのshortintとint型です。
とにかくべた書きでもいいのですが,どのようにすれば高速に変換できるのでしょうか。
glib.hやhtonlなどを使用する方法などよろしくお願いします。
No.2ベストアンサー
- 回答日時:
linux(glibcな処理系)だと,htonl()もインライン展開がなされます。
実行速度はエンディアン変換演算よりも,その周囲の処理全体をみてコード最適化する方が大事。
No.1
- 回答日時:
glib のソースを見る限り
GINT16_FROM_BE とか GINT32_FROM_BE
を使えば、インラインアセンブラに展開されているようです。
htonl は関数呼び出しだからそれがない分 glib 有利・・・かも
ただ、バイトオーダーの変換なんて
glib 使っても自力でマクロ組んでも
そんな劇的に速度が変化するとはおもえないなぁ
こんにちわ,回答ありがとうございます。
ただ,GUINT16_LE_BEなどを使用しようとすると,ヘッダーファイル自体がエラーを起こすんです。
何かダウンロードがおかしいのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Mac 乗数の入力方法
-
文字コードの変換
-
逆コンパイルと逆アセンブルの...
-
bitmapクラスをiconクラスに変...
-
NumericUpDownを使用してテキス...
-
VB6で10進数を32進数に変換する...
-
WinHelpからHTML Helpに変換
-
VB6からVB2010への変換について
-
10進数をBCDに変換する方法
-
家電製品の電力周波数を変える機械
-
エクセルのvbaで検索ボタンを作る
-
マンセル⇔XYZ,RGB変換式或いは...
-
分を時間に変換するプログラム
-
C/C++→JAVAに変換するツール
-
C#で漢字→ローマ字を変換
-
C#でのpngからbmpへの変換について
-
VBへの変換の仕方 RS232C送信...
-
VB 6 を VS 2012に変換するには?
-
テキストボックス内の型変換と...
-
シーケンサのCPUはニーモニック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
家電製品の電力周波数を変える機械
-
エクセルVBAの自動変換機能?
-
緯度、経度の 10進法と 60進法...
-
Mac 乗数の入力方法
-
C/C++→JAVAに変換するツール
-
なぜ通信には16進数文字列が使...
-
VB6からVB2010への変換について
-
10進数をBCDに変換する方法
-
画像ファイル変換(Tiff→PDF)
-
エクセルのvbaで検索ボタンを作る
-
分を時間に変換するプログラム
-
StrConvの使い方について教えて...
-
三角形を逆三角形にしたいです...
-
逆コンパイルと逆アセンブルの...
-
VB.NETをJavaに変換するツール...
-
UTF8→ShiftJISに変換したいです!
-
FortranをC++(VC++)へ変換
-
3のつく数字と3の倍数のみを表...
-
c++でmatからvectorへの変換の...
-
C#でのpngからbmpへの変換について
おすすめ情報