Вот такой вот код,
Код
inline uint32_t crc32_add( uint32_t crc, uint8_t byte )
{
crc ^= byte;
for (uint8_t i=0; i<8; i++)
{
if (crc & 1)
{
crc = (crc>>1) ^ CRC32_POLYNOME;
}
else
{
crc >>= 1;
}
}
return crc;
}
скомпилирован для двух платформ: BorlandCC для ПК и GCC для AVR.... На разных платформах разные результаты выполнения. Какими словами уточнить код, чтобы компиляторы наконец договорились?
Ещё два момента: я пока не знаю, кто из них на данный момент правильно работает. В борланде подключен \\avr\\include\\inttypes.h из WinAVR.
Спасибо
Сообщение отредактировал Злодей - Apr 30 2009, 07:47