Skip to main content
CRC Calc

CRC-32 / AIXM

Width32-bitRefInNoRefOutNo

Need custom parameters? Open in full calculator

Standard test string

Result

0x3010BF7F

Similar CRC Algorithms

Result is calculated from the current input. Check is the published verification value for the standard input 123456789. Click another algorithm to view its detail page.

CRC Lookup Table

0x000000000x814141AB0x83C3C2FD0x028283560x86C6C4510x078785FA0x050506AC0x844447070x8CCCC9090x0D8D88A20x0F0F0BF40x8E4E4A5F0x0A0A0D580x8B4B4CF30x89C9CFA50x08888E0E
0x98D8D3B90x199992120x1B1B11440x9A5A50EF0x1E1E17E80x9F5F56430x9DDDD5150x1C9C94BE0x14141AB00x95555B1B0x97D7D84D0x169699E60x92D2DEE10x13939F4A0x11111C1C0x90505DB7
0xB0F0E6D90x31B1A7720x333324240xB272658F0x363622880xB77763230xB5F5E0750x34B4A1DE0x3C3C2FD00xBD7D6E7B0xBFFFED2D0x3EBEAC860xBAFAEB810x3BBBAA2A0x3939297C0xB87868D7
0x282835600xA96974CB0xABEBF79D0x2AAAB6360xAEEEF1310x2FAFB09A0x2D2D33CC0xAC6C72670xA4E4FC690x25A5BDC20x27273E940xA6667F3F0x222238380xA36379930xA1E1FAC50x20A0BB6E
0xE0A08C190x61E1CDB20x63634EE40xE2220F4F0x666648480xE72709E30xE5A58AB50x64E4CB1E0x6C6C45100xED2D04BB0xEFAF87ED0x6EEEC6460xEAAA81410x6BEBC0EA0x696943BC0xE8280217
0x78785FA00xF9391E0B0xFBBB9D5D0x7AFADCF60xFEBE9BF10x7FFFDA5A0x7D7D590C0xFC3C18A70xF4B496A90x75F5D7020x777754540xF63615FF0x727252F80xF33313530xF1B190050x70F0D1AE
0x50506AC00xD1112B6B0xD393A83D0x52D2E9960xD696AE910x57D7EF3A0x55556C6C0xD4142DC70xDC9CA3C90x5DDDE2620x5F5F61340xDE1E209F0x5A5A67980xDB1B26330xD999A5650x58D8E4CE
0xC888B9790x49C9F8D20x4B4B7B840xCA0A3A2F0x4E4E7D280xCF0F3C830xCD8DBFD50x4CCCFE7E0x444470700xC50531DB0xC787B28D0x46C6F3260xC282B4210x43C3F58A0x414176DC0xC0003777
0x400059990xC14118320xC3C39B640x4282DACF0xC6C69DC80x4787DC630x45055F350xC4441E9E0xCCCC90900x4D8DD13B0x4F0F526D0xCE4E13C60x4A0A54C10xCB4B156A0xC9C9963C0x4888D797
0xD8D88A200x5999CB8B0x5B1B48DD0xDA5A09760x5E1E4E710xDF5F0FDA0xDDDD8C8C0x5C9CCD270x541443290xD55502820xD7D781D40x5696C07F0xD2D287780x5393C6D30x511145850xD050042E
0xF0F0BF400x71B1FEEB0x73337DBD0xF2723C160x76367B110xF7773ABA0xF5F5B9EC0x74B4F8470x7C3C76490xFD7D37E20xFFFFB4B40x7EBEF51F0xFAFAB2180x7BBBF3B30x793970E50xF878314E
0x68286CF90xE9692D520xEBEBAE040x6AAAEFAF0xEEEEA8A80x6FAFE9030x6D2D6A550xEC6C2BFE0xE4E4A5F00x65A5E45B0x6727670D0xE66626A60x622261A10xE363200A0xE1E1A35C0x60A0E2F7
0xA0A0D5800x21E1942B0x2363177D0xA22256D60x266611D10xA727507A0xA5A5D32C0x24E492870x2C6C1C890xAD2D5D220xAFAFDE740x2EEE9FDF0xAAAAD8D80x2BEB99730x29691A250xA8285B8E
0x387806390xB93947920xBBBBC4C40x3AFA856F0xBEBEC2680x3FFF83C30x3D7D00950xBC3C413E0xB4B4CF300x35F58E9B0x37770DCD0xB6364C660x32720B610xB3334ACA0xB1B1C99C0x30F08837
0x105033590x911172F20x9393F1A40x12D2B00F0x9696F7080x17D7B6A30x155535F50x9414745E0x9C9CFA500x1DDDBBFB0x1F5F38AD0x9E1E79060x1A5A3E010x9B1B7FAA0x9999FCFC0x18D8BD57
0x8888E0E00x09C9A14B0x0B4B221D0x8A0A63B60x0E4E24B10x8F0F651A0x8D8DE64C0x0CCCA7E70x044429E90x850568420x8787EB140x06C6AABF0x8282EDB80x03C3AC130x01412F450x80006EEE

CRC Source Code

/* 
 * Model: CRC-32 / AIXM (32-bit)
 * Poly: 0x814141AB, Init: 0x00000000, XorOut: 0x00000000
 * CRC Table C Source Code & Lookup Table Generator
 */
#include <stdint.h>
#include <stddef.h>

const uint32_t crc_table[256] = {
  0x00000000, 0x814141AB, 0x83C3C2FD, 0x02828356, 0x86C6C451, 0x078785FA, 0x050506AC, 0x84444707, 
  0x8CCCC909, 0x0D8D88A2, 0x0F0F0BF4, 0x8E4E4A5F, 0x0A0A0D58, 0x8B4B4CF3, 0x89C9CFA5, 0x08888E0E, 
  0x98D8D3B9, 0x19999212, 0x1B1B1144, 0x9A5A50EF, 0x1E1E17E8, 0x9F5F5643, 0x9DDDD515, 0x1C9C94BE, 
  0x14141AB0, 0x95555B1B, 0x97D7D84D, 0x169699E6, 0x92D2DEE1, 0x13939F4A, 0x11111C1C, 0x90505DB7, 
  0xB0F0E6D9, 0x31B1A772, 0x33332424, 0xB272658F, 0x36362288, 0xB7776323, 0xB5F5E075, 0x34B4A1DE, 
  0x3C3C2FD0, 0xBD7D6E7B, 0xBFFFED2D, 0x3EBEAC86, 0xBAFAEB81, 0x3BBBAA2A, 0x3939297C, 0xB87868D7, 
  0x28283560, 0xA96974CB, 0xABEBF79D, 0x2AAAB636, 0xAEEEF131, 0x2FAFB09A, 0x2D2D33CC, 0xAC6C7267, 
  0xA4E4FC69, 0x25A5BDC2, 0x27273E94, 0xA6667F3F, 0x22223838, 0xA3637993, 0xA1E1FAC5, 0x20A0BB6E, 
  0xE0A08C19, 0x61E1CDB2, 0x63634EE4, 0xE2220F4F, 0x66664848, 0xE72709E3, 0xE5A58AB5, 0x64E4CB1E, 
  0x6C6C4510, 0xED2D04BB, 0xEFAF87ED, 0x6EEEC646, 0xEAAA8141, 0x6BEBC0EA, 0x696943BC, 0xE8280217, 
  0x78785FA0, 0xF9391E0B, 0xFBBB9D5D, 0x7AFADCF6, 0xFEBE9BF1, 0x7FFFDA5A, 0x7D7D590C, 0xFC3C18A7, 
  0xF4B496A9, 0x75F5D702, 0x77775454, 0xF63615FF, 0x727252F8, 0xF3331353, 0xF1B19005, 0x70F0D1AE, 
  0x50506AC0, 0xD1112B6B, 0xD393A83D, 0x52D2E996, 0xD696AE91, 0x57D7EF3A, 0x55556C6C, 0xD4142DC7, 
  0xDC9CA3C9, 0x5DDDE262, 0x5F5F6134, 0xDE1E209F, 0x5A5A6798, 0xDB1B2633, 0xD999A565, 0x58D8E4CE, 
  0xC888B979, 0x49C9F8D2, 0x4B4B7B84, 0xCA0A3A2F, 0x4E4E7D28, 0xCF0F3C83, 0xCD8DBFD5, 0x4CCCFE7E, 
  0x44447070, 0xC50531DB, 0xC787B28D, 0x46C6F326, 0xC282B421, 0x43C3F58A, 0x414176DC, 0xC0003777, 
  0x40005999, 0xC1411832, 0xC3C39B64, 0x4282DACF, 0xC6C69DC8, 0x4787DC63, 0x45055F35, 0xC4441E9E, 
  0xCCCC9090, 0x4D8DD13B, 0x4F0F526D, 0xCE4E13C6, 0x4A0A54C1, 0xCB4B156A, 0xC9C9963C, 0x4888D797, 
  0xD8D88A20, 0x5999CB8B, 0x5B1B48DD, 0xDA5A0976, 0x5E1E4E71, 0xDF5F0FDA, 0xDDDD8C8C, 0x5C9CCD27, 
  0x54144329, 0xD5550282, 0xD7D781D4, 0x5696C07F, 0xD2D28778, 0x5393C6D3, 0x51114585, 0xD050042E, 
  0xF0F0BF40, 0x71B1FEEB, 0x73337DBD, 0xF2723C16, 0x76367B11, 0xF7773ABA, 0xF5F5B9EC, 0x74B4F847, 
  0x7C3C7649, 0xFD7D37E2, 0xFFFFB4B4, 0x7EBEF51F, 0xFAFAB218, 0x7BBBF3B3, 0x793970E5, 0xF878314E, 
  0x68286CF9, 0xE9692D52, 0xEBEBAE04, 0x6AAAEFAF, 0xEEEEA8A8, 0x6FAFE903, 0x6D2D6A55, 0xEC6C2BFE, 
  0xE4E4A5F0, 0x65A5E45B, 0x6727670D, 0xE66626A6, 0x622261A1, 0xE363200A, 0xE1E1A35C, 0x60A0E2F7, 
  0xA0A0D580, 0x21E1942B, 0x2363177D, 0xA22256D6, 0x266611D1, 0xA727507A, 0xA5A5D32C, 0x24E49287, 
  0x2C6C1C89, 0xAD2D5D22, 0xAFAFDE74, 0x2EEE9FDF, 0xAAAAD8D8, 0x2BEB9973, 0x29691A25, 0xA8285B8E, 
  0x38780639, 0xB9394792, 0xBBBBC4C4, 0x3AFA856F, 0xBEBEC268, 0x3FFF83C3, 0x3D7D0095, 0xBC3C413E, 
  0xB4B4CF30, 0x35F58E9B, 0x37770DCD, 0xB6364C66, 0x32720B61, 0xB3334ACA, 0xB1B1C99C, 0x30F08837, 
  0x10503359, 0x911172F2, 0x9393F1A4, 0x12D2B00F, 0x9696F708, 0x17D7B6A3, 0x155535F5, 0x9414745E, 
  0x9C9CFA50, 0x1DDDBBFB, 0x1F5F38AD, 0x9E1E7906, 0x1A5A3E01, 0x9B1B7FAA, 0x9999FCFC, 0x18D8BD57, 
  0x8888E0E0, 0x09C9A14B, 0x0B4B221D, 0x8A0A63B6, 0x0E4E24B1, 0x8F0F651A, 0x8D8DE64C, 0x0CCCA7E7, 
  0x044429E9, 0x85056842, 0x8787EB14, 0x06C6AABF, 0x8282EDB8, 0x03C3AC13, 0x01412F45, 0x80006EEE
};

uint32_t calculate_crc(const uint8_t *data, size_t length) {
    uint32_t crc = 0x00000000;
    for (size_t i = 0; i < length; i++) {
        #if 0
        uint8_t idx = (uint8_t)(crc ^ data[i]);
        crc = (crc >> 8) ^ crc_table[idx];
        #else
        uint8_t idx = (uint8_t)((crc >> 24) ^ data[i]);
        crc = (crc << 8) ^ crc_table[idx];
        #endif
    }
    return crc ^ 0x00000000;
}

About CRC-32/AIXM

CRC-32/AIXM is used in aeronautical information exchange applications.

CRC-32/AIXM is a 32-bit CRC model defined by polynomial 0x814141AB, an initial register value of 0x00000000, and final XOR 0x00000000. It uses normal, non-reflected input and output processing.

Documented application context for this model includes AIXM, Aviation data, Aeronautical systems. The calculator above applies this exact parameter set to the current input; the published Check value below is instead the fixed verification result for ASCII 123456789.

Standard test vector

CRC implementations are commonly verified with the ASCII input 123456789.

Input format
ASCII
Input
123456789
Expected CRC
0x3010BF7F
Residue
0x00000000

Model characteristics

A model is identified by its complete parameter set, not its polynomial alone.

Bit order
Normal
Register start
0x00000000
Final XOR
0x00000000
Published check
0x3010BF7F

Implementation checks for CRC-32/AIXM

  • Use a 32-bit register and polynomial 0x814141AB.
  • Initialize the register to 0x00000000 and use XorOut 0x00000000 exactly as listed; changing either value defines a different model.
  • Verify the implementation with ASCII “123456789”; the expected result is 0x3010BF7F.

Continue with the main calculator, browse the algorithm catalog, compare models in the Algorithm Reference section, or generate a lookup table.

Complete CRC-32/AIXM parameters

CRC parameter guide
ParameterValueMeaningReference
Width32 bitsCRC register and result widthRead guide
Poly0x814141ABGenerator polynomial without the leading termRead guide
Init0x00000000Initial CRC register valueRead guide
RefInNoReflect each input byte before processingRead guide
RefOutNoReflect the register before XOR OutRead guide
XorOut0x00000000Final value XORed with the CRC registerRead guide
Check0x3010BF7FCRC of ASCII “123456789”Read guide
Residue0x00000000Expected residue after appending a valid CRCRead guide
AliasesCRC-32Q

Where CRC-32/AIXM is used

  • 01AIXM
  • 02Aviation data
  • 03Aeronautical systems

CRC-32/AIXM FAQ

What is the check value for CRC-32/AIXM?

For the standard ASCII test input 123456789, the check value of CRC-32/AIXM is 0x3010BF7F.

What polynomial does CRC-32/AIXM use?

CRC-32/AIXM uses the 32-bit polynomial 0x814141AB.

Does CRC-32/AIXM use reflected input and output?

For CRC-32/AIXM, RefIn is No and RefOut is No.

What is CRC-32/AIXM commonly confused with?

The closest published model by parameter overlap is CRC-32/XFER, differing from CRC-32/AIXM in polynomial.