C语言实现CHIP-8模拟器
CHIP-8 是一种解释型语言,设计之初就是为了编写简单的小游戏。我猜是作者嫌老机器的汇编语言太复杂繁琐,从而自己设计了一门汇编语言,并且摆脱硬件的束缚,在模拟器上运行。其实这个思想和 Java 等基于虚拟机的高级语言也是类似的,提供方便程序员编写的指令集,在硬件之上空架一层虚拟机,实现 “Write Once, Run Everywhere”。
CHIP-8 是一种解释型语言,设计之初就是为了编写简单的小游戏。我猜是作者嫌老机器的汇编语言太复杂繁琐,从而自己设计了一门汇编语言,并且摆脱硬件的束缚,在模拟器上运行。其实这个思想和 Java 等基于虚拟机的高级语言也是类似的,提供方便程序员编写的指令集,在硬件之上空架一层虚拟机,实现 “Write Once, Run Everywhere”。
周末偶然看到这篇 Coroutines in C,作者利用达夫设备(Duff’s Device)定义了几个宏,在 C 语言中模拟了协程的实现。然后又警告读者不要在公司写这样的代码 😅:
Of course, this trick violates every coding standard in the book. Try doing this in your company’s code and you will probably be subject to a stern telling off if not disciplinary action! . . . It’s a wonder you haven’t been fired on the spot for such irresponsible coding practice. You should be ashamed of yourself.
维护一组提供较强一致性的小型集群(共识核心 Consistent Core),以允许大型数据集群协调服务器活动,而无需自行实现基于quorum的算法。