《痞子衡嵌入式半月刊》 第 91 期

痞子衡嵌入式半月刊: 第 91 期

這裏分享嵌入式領域有用有趣的項目/工具以及一些熱點新聞,農曆年分二十四節氣,希望在每個交節之日準時發佈一期。

本期刊是開源項目(GitHub: JayHeng/pzh-mcu-bi-weekly),歡迎提交 issue,投稿或推薦你知道的嵌入式那些事兒。

上期回顧《痞子衡嵌入式半月刊: 第 90 期》

嘮兩句

歷史上的今天:1908年2月11日,愛迪生獲得發明電影放映機專利權。

本期共收錄 5 個項目,希望對你有幫助!

項目類

1、C4 - 4個函數實現的C語言編譯器

C4 是用 4 個函數實現的 C 語言編譯器。該項目僅用了 500+ 行代碼、4 個函數,就實現了一個小型 C 語言編譯器。但因爲它的代碼過於精簡,所以源碼閱讀起來並不輕鬆。

2、SDS - 簡單的C語言動態字符串庫

SDS 是 Redis 作者寫的 C 語言動態字符串。它相較於 C 字符串,使用起來更加方便。具有速度快(常數複雜度獲取字符串長度)、二進制安全(圖片、音頻等)、兼容部分 C 字符串函數等特點。

sds mystring = sdsnew("Hello World!");
printf("%s\n", mystring);
sdsfree(mystring);

output> Hello World!

3、foolrenderer - C語言從零實現的軟件渲染器

foolrenderer 是用 C 語言從零實現的軟件渲染器。不用圖形 API 僅用幾千行 C 代碼,實現了一套類似 OpenGL 的基本圖形功能,以及應用於遊戲開發的實時渲染技術,如陰影、切線空間法線映射、基於物理的材質系統等。該項目包含豐富的註釋和數學計算推導過程的說明,可用於幫助理解和學習 GPU 的基本工作原理、基礎渲染知識和着色器原理。

4、Genann - 純C實現的簡單神經網絡庫

Genann 是一個經過精心測試的庫,用於在 C 中訓練和使用前饋人工神經網絡(ANN)。它的主要特點是簡單、快速、可靠和可魔改(hackable),它只需要提供一些必要功能和一點額外功能就能實現這些。

Genann 特點包含:

- 沒有依賴關係的ANSI C。
- 包含在一個單一的源代碼和頭文件。
- 簡單,快速,線程安全,易於擴展。
- 實現反向傳播訓練。
- 兼容其他訓練方法(經典優化、遺傳算法等)
- 包括示例和測試套件。
- 在zlib許可下發布-幾乎免費用於任何用途。

5、excelCPU - 在Excel中構建出的16位CPU

excelCPU 是一位業餘愛好者通過 Excel 創建的一個 16 位 CPU。它在 Excel 中構建,以 3Hz 時鐘頻率運行,並具有 128KB RAM、16 色 128x128 像素顯示屏和自定義彙編語言 Excel-ASM16。

這個 Excel CPU 項目中最令人印象深刻的壯舉是 Excel-ASM16。這種彙編語言包含 23 種不同的指令,並支持變量、標籤,甚至二進制文件支持。這些是彙編語言的基本功能,但足以滿足在Microsoft Excel 下運行的 16 位 CPU 的限制。

歡迎訂閱

文章會同時發佈到我的 博客園主頁CSDN主頁知乎主頁微信公衆號 平臺上。

微信搜索"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章