首页 > 其他分享 >《痞子衡嵌入式半月刊》 第 91 期

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

时间:2024-02-11 20:22:34浏览次数:40  
标签:github 项目 痞子 Excel 嵌入式 https 91 com

痞子衡嵌入式半月刊: 第 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主页知乎主页微信公众号 平台上。

微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

标签:github,项目,痞子,Excel,嵌入式,https,91,com
From: https://www.cnblogs.com/henjay724/p/18013504

相关文章

  • 国产AI训练卡,对标美国NVIDIA公司的A100,华为昇腾Atlas 300T A2(Ascend 910B4)高性能GPU/N
    ChinahassuccessfullyachievedthelocalizationofAIchips,breakingthroughthetechnologicalrestrictionsimposedbytheU.S.governmentandrealizingindependentdesignandproductionofdomesticAIchips.Huawei'sAscend910modelAIchiphass......
  • Leetcode 1691. 堆叠长方体的最大高度
    https://leetcode.cn/problems/maximum-height-by-stacking-cuboids/description/给你n个长方体cuboids,其中第i个长方体的长宽高表示为cuboids[i]=[widthi,lengthi,heighti](下标从0开始)。请你从cuboids选出一个子集,并将它们堆叠起来。如果widthi<=widthj......
  • P9170 [省选联考 2023] 填数游戏 题解
    Description众所周知,Alice和Bob是一对好朋友。今天,他们约好一起玩游戏。一开始,他们各自有一张空白的纸条。接下来,他们会在纸条上依次写\(n\)个\([1,m]\)范围内的正整数。等Alice写完,Bob在看到Alice写的纸条之后开始写他的纸条。Alice需要保证她写下的第\(i\)个......
  • Codeforces Round 919 (Div. 2)
    https://codeforces.com/contest/1920B还行,C、Egood(E据说是很典的dp但我是dp苦手),D、F1无聊,F2不会A.SatisfyingConstraints*800有\(n\)个条件,每个条件形如\(x\gek,x\lek\)或\(x\neqk\),\(k\)为整数。问满足条件的整数\(x\)的个数。先处理\(\ge,\le\),得到限制......
  • CF1912K
    题意:给定一个长度为n的序列,求有多少个子序列满足该子序列内任意相邻3个数的和为偶数。只与奇偶有关,所以可以把状态转化为01的。设\(f[i][x][y]\)表示在前i个数中,最后一位为x,倒数第二位为y的方案数。\[f[i][x][y]=f[i-1][x][y]+w(a[i])\]$w(a[i])$为以a......
  • Codeforces-Round-917
    比赛链接A.LeastProduct假如序列中有\(0\),那么答案是\(0\)。否则如果有奇数个负数,只需要让每个数的绝对值最大:不操作是最优的。否则如果有偶数个负数,乘积只会\(\ge0\),为了达到最小值\(0\),只需要将任意一个数改成\(0\)。时间复杂度\(\mathcal{O}(n)\)。codeforA......
  • CF1918G Permutation of Given 题解
    总体思路本题通过每次在已知序列中加入\(2\)个元素的方法,可以构造出满足条件的序列\(A\),这里提供一种新的构造方法。性质因为序列\(A\)中所有元素构成的可重集与序列\(B\)中所有元素构成的可重集完全相等,所以\(A\)中所有元素之和与\(B\)中所有元素之和相等。\[\s......
  • 嵌入式中,日志调试法的一些规则
    https://mp.weixin.qq.com/s/yTInDBFbI0oM5bowx990lw在我们嵌入式开发中,打印日志是最常用的一种调试手段。合理地打印日志,可以帮助我们快速地分析问题。本篇文章我们来汇总一些嵌入式打log的一些规则。1.什么操作下加日志?(1)错误处理对于不能恢复的严重错误,日志内容应详细到......
  • Codeforces Round 913 (Div. 3) G.
    题目链接G.把灯看成节点,灯之间的关系看成有向边得到基环树森林若节点的入度为0,那么它一定要用一次开关,这是可以确定的所以用拓扑,把这些确定贡献的节点删去然后就剩下了若干个环若环上有奇数个权值为1的节点,那么不可能全部关上对于环上一个打开的灯,它要么直接用自己的开关......
  • Codeforces Round 917 (Div. 2)
    https://codeforces.com/contest/1917A.LeastProduct*800给定整数数组,可以把数组中的数\(a_i\)改为\(0\sima_i\)中的任意整数,最小化所有数的乘积,在此基础上使操作次数最少讨论一下负数的个数和\(0\)的个数#include<bits/stdc++.h>usingnamespacestd;usingll......