December 26, 2023

年度更新。End of 2023

 忽然發現 2023 即將過去,今年都沒來更新 blog,趕緊來更新一下。

過去一年最大的改變莫過於 chatGPT 進入生活吧。短短幾個月,多做了很多以前不知道怎麼做或是沒想到可以做的事情。當然主要還是專業的寫程式碼之類。


然後有個人類訓練 AI,但是人類同時也被 AI 訓練著的感想。

今年最讓我覺得特別的大概是 CRC32 計算 for MCU。在運算量和 code size 達到均衡。

貼出來分享一下。

uint32_t halcrc32_update(uint32_t crc, uint8_t data) {

    crc ^= data;

    for (int i = 0; i < 8; i++) {

        if (crc & 1) {

            crc = (crc >> 1) ^ 0xEDB88320;

        } else {

            crc >>= 1;

        }

    }

    return crc;

}


uint32_t halcrc32_calculate(const uint8_t *data, uint32_t length) {

    uint32_t crc = 0xFFFFFFFF;

    for (uint32_t i = 0; i < length; i++) {

crc ^= data[i];

for (uint32_t n = 0; n < 8; n++) {

    if (crc & 1) {

        crc = (crc >> 1) ^ 0xEDB88320;

    } else {

        crc >>= 1;

    }

}

    }

    return crc ^ 0xFFFFFFFF;

}

 

寫得不多,塞點圖充版面一下。照片是 Pixel 8 Pro 拍攝的。