crc

    0熱度

    1回答

    我想寫一個CRC不同標準的程序(位處理)卡在init參數上。當init = 0x00時,它可以正常工作,不僅適用於CRC-8 ...但是,只要更改init,值就不會正確發送。問題是什麼 ? Init只需要改變寄存器的初始值? CRC-8/INIT = 0×00,聚= 0×07 - 工作正常 CRC-8 CDMA/INIT = 0xFF時,聚= 0x9b - aldeady沒有 CRC-8: int

    1熱度

    2回答

    我試圖更好地理解CRC,但是我卡住了一下。 這裏有幾個樣本向量1,我可以正確計算,但我堅持驗證計算的CRC是正確的。 例如,給定的32個字節的消息: 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f 我的理解是,你首先附加0的32位獲得有效載荷: 000102030405060708090a0b0c0d0e0f1011

    0熱度

    1回答

    我們在傳輸過程中使用CRC進行數據錯誤檢測。在CRC中,我們用除數除數據以檢查數據是否有錯誤。但是如果除數在傳輸過程中被破壞會發生什麼?我們如何確保它不會發生。

    0熱度

    1回答

    我使用FastCRC庫生成CRC,並返回一個uint32_t; uint32_t crc = CRC32.crc32(buf, sizeof(buf)); 的BUF,其包含消息,是uint8_t,我需要的uint32_t crc附加在BUF的末尾。該buf看起來像: uint8_t buf[] = {0x7E, 0x00, 0x78, 0xF0, 0x7E}; 如何迭代通過CRC追加它?

    0熱度

    1回答

    我正在編寫一個代碼來使用32位無符號整數計算CRC16。當試圖從執行CRC操作的XOR函數中輸出返回值時,它始終打印0.我嘗試了各種調試方法,例如打印語句,但是,我似乎無法弄清楚! 這是我的XOR功能: uint32_t XOR(uint32_t divisor, uint32_t dividend) { uint32_t divRemainder = dividend;

    0熱度

    1回答

    Intel SSE4.2內部函數中存在64位CRC函數。 unsigned __int64 _mm_crc32_u64 (unsigned __int64 crc, unsigned __int64 v) 但是我找不到在AVX2內在函數上的CRC計算的256位版本。我在我的程序中使用256位變量(__m256i),所以我想計算超過256位的crc(或散列)。如何使用英特爾AVX2執行此操作?

    0熱度

    1回答

    我在AVX2的新版本程序中使用256位變量(__m256i類型),並使用了Intel內在函數。之前,使用64位塊來處理數據。所以,_mm_crc32_u64函數用於CRC計算。 crc = _mm_crc32_u64(seed,*chunk_64bit); 但現在,爲了提高性能,我想計算CRC每個256個數據塊(至少128個數據塊)seperately。 一種方法可以像這樣在每個塊上應用_mm

    0熱度

    2回答

    我想在c中創建一個CRC-15檢查,並且輸出永遠不會對文件的每一行都正確。我試圖在每行旁邊累積地輸出每行的CRC。我使用#define POLYNOMIAL 0xA053作爲除數和分紅文本。我需要將數字表示爲32位無符號整數。我試圖打印出十六進制值來跟蹤和翻轉不同的轉變。但是,我似乎無法弄清楚!我有一種感覺,它與我填充東西的方式有關。我的邏輯有缺陷嗎? CRC將以四個十六進制數字表示,該序列將具有

    0熱度

    1回答

    我有一個類用於我的協議報頭中的C# public class Header { public UInt16 m_syncBytes; public UInt16 m_DestAddress; public UInt16 m_SourceAddress; public byte m_Protocol; public byte m_SequnceN

    0熱度

    1回答

    我想知道如何編碼從0開始的消息。 ie。鑑於 代碼:10111 消息:001011110 我試着劃分這多次,但我不知道如果我可以忽略消息的前兩個零,因爲它們對應於x^7和x^8 ... 任何幫助非常感謝。