endianness

    1

    1答えて

    A QNXライブラリは var1 = ENDIAN_LE16(var1); を次のように(符号なしshort)VAR1のエンディアンを変換するために使用されるライン #define ENDIAN_LE16(__x) (__x) を含有します。これはどのように作動しますか? __xとx__は、プリプロセッサに特別な意味を持つ必要がありますか?

    1

    1答えて

    私はUDPの上にLinuxカーネルのプロトコルを実装していて、パケットを受け取ったときにカーネル内から返信したいと思っています。このために、宛先(受信パケットの送信元アドレス)へのルートを取得してから返信するには、ip4_datagram_connectを実行します。 ip4_datagram_connectを呼び出すには、関数にアドレスとして渡すためにsockaddr_in構造体を記入する必要が

    -1

    1答えて

    私はちょうど彼らが与えられた長さのためのgetBigEndian関数のコードの1つを使用していたJavaコードの1つを通過していました。以下は、JAVAのためのコードは次のとおりです。 // JAVA public static byte[] getBigEndian32(int length) { byte[] res = new byte[4]; res[0] = (by

    -1

    1答えて

    Tiffファイルを別のイメージに変換するJavaプログラムを作成していますが、TIFFファイルにII *が含まれていないためImageDecoderを使用できません私のtiffファイルはいくつかのヘッダーで始まり、イメージはII *で始まります。 TIFF画像でII *の前にヘッダー部分を削除する方法を教えてください。 以下はしかし、私は以下のTIFFから画像をsepereteする私の方法である

    -1

    3答えて

    PDPエンディアンでビットシフトを実行すると、この動作は少しエンディアンまたはビッグエンディアンのシステムよりも少し時間がかかりますか? 私がこの質問をする理由は、シフトのすべての方向に進むビットのように思えるからです。コンピュータが行うのは難しいでしょう。 私はPDPエンディアンマシンにアクセスできないため、これをテストする方法はありません。 =(

    1

    3答えて

    私は傾斜と迎撃を含む.binファイルを持っています。私はFortranを使用して値を読み取り、AIXとLinuxを実行しているマシンでは異なる値を取得しています。私は、Linuxデータが正確であると信じています。これはスタックサイズやエンディアンと関係がありますか?例えば 、AIXの最大値は次のとおりです。0.3401589687E + 39 Linuxの最大値であるのに対し:6.031288 p

    1

    2答えて

    コメント: #include "emmintrin.h" int main(int argc, char *argv[]) { volatile __m128i x = _mm_set_epi64x(1, 0); return 0; } を私は(唯一の興味深い部分をリスト)clang -O -S test.cを使用してアセンブリを取得できます。 ... movl

    -2

    2答えて

    私は、生の値のシーケンスを保持する読み込み用バイナリファイルを提供されています。単純化のために、それらは4バイトまたは8バイトの長さの符号なし整数値であると仮定します。残念なことに私の場合、これらの値のバイト順は、プロセッサのエンディアンと互換性がありません(小さなものと大きいもの、またはその逆、奇妙なPDFエンディアンなどは気にしないでください)。私はこのデータを適切なエンディアンで記憶しておき

    0

    1答えて

    gdbを使用して、使用中のシステムがリトルエンディアンのアプローチを採用している場合、メモリからレジスタにバイトがコピーされるときに、それらが逆になることがわかりました。 x86アセンブリー命令セットでは、両方のオペランドがメモリー内にある操作が許可されていないため、私は疑問に思っていました。まず、リトルエンディアンの値を直接逆順に実行する操作はありますか?