packed

    0

    2答えて

    背景: 16ビットTI DSP(正確にはTMS320F2812)です。 DSPはリトルエンディアンです。コンパイラはC2000(PACKEDディレクティブをサポートしていません)です。私は、さまざまなサイズの構造をイーサネット経由で送信元から送信先に伝達する必要があります。プロトコルに問題があると、PACKEDデータが必要になります(パディングされたバイトも情報と見なされます)。私は現在、行う予定

    6

    4答えて

    従来のDelphi 7プログラムの一部のコードを見直しながら、どこにでもpackedと記されているレコードがあることに気付きました。これは、もちろん、レコードがバイト単位で格納され、CPUがアクセスするためにより速くなるようにアライメントされていないことを意味します。パッキングは、コンパイラや何かの裏をかくための試みとして、盲目的に行われているようだ - たとえばレコード基本的に代わりに高速アクセ

    25

    3答えて

    私は、マイクロチップC30コンパイラのために書かれたいくつかのCコードもののつもりですし、私は多くの場合、以下のように定義された構造体を参照してください。 typedef struct __attribute__((__packed__)) { IP_ADDR MyIPAddr; // IP address IP_ADDR MyMask; // Subnet

    0

    1答えて

    UDPソケットを使用してC++ネットワークアプリケーションを作成しているとします。私たちは、データのそれほど小さなパックを渡すために必要なので、私たちはバイトオーダーがネットワーク1で確認しながら、このような構造を使用: struct [[gnu::packed]] datagram { uint64_t timestamp; uint8_t type; uint32

    1

    1答えて

    私は、スマートメータープロジェクト、ARM、Keilコンパイラで作業しています。回帰テストを実行するためにg ++のより複雑なロジックをいくつかコンパイルしたいと思います。私が購入したWMBusスタックへのインターフェイスを定義するいくつかのインクルードファイルに問題があります。 PACKED_STRUCT(typedef struct S_WMBUS_ADDR_T { /*! Man

    1

    1答えて

    私はstruct.pack()を使ってPythonの整数をCの構造体に変換し(ファイルに書き込む)、struct.unpack()変換を元に戻すときは、通常は元の値になりますが、必ずしもそうとは限りません。どうして?管理不能な値がありますか? 例: import struct fileName ='C:/myFile.ext' formatCode = 'H' nBytes = 2 tri

    2

    2答えて

    my previous questionの続きとして、PackedArrayのリスト製品を見つけるSimonの方法は高速ですが、負の値では機能しません。 これは、Absで最小限の時間ペナルティで「修正」することができますが、記号が失われているため、製品記号を別途見つける必要があります。 私が試した最速の方法はEvenQ @ Total @ UnitStep[-lst] lst = RandomRe