LuaJIT 是如何工作的 - 解释模式

2021-06-13
阅读 2 分钟
9.3k
今天我们介绍 Lua 语言的另外一个虚拟机实现 LuaJIT,LuaJIT 使用的 lua 5.1 的语言标准(也可以兼容 lua 5.2)。意味着同样一份遵守 lua 5.1 标准的代码,既可以用标准 lua 虚拟机来跑,也可以用 LuaJIT 来跑。

C 代码是如何跑起来的

2021-04-24
阅读 5 分钟
13k
上一篇「CPU 提供了什么」中,我们了解了物理的层面的 CPU,为我们提供了什么。本篇,我们介绍下高级语言「C 语言」是如何在物理 CPU 上面跑起来的。C 语言提供了什么C 语言作为高级语言,为程序员提供了更友好的表达方式。在我看来,主要是提供了以下抽象能力:变量,以及延伸出来的复杂结构体我们可以基于变量来描述复...

实操体验 CPU 的流水线/多发射

2021-04-05
阅读 4 分钟
6.3k
前言前文 <一行机器指令感受下内存操作到底有多慢> 中,我们体验到了 CPU 流水线阻塞带来的数量级性能差异。当时只是根据机器码,分析推断出来的,这次我们做一些更小的实验来分析验证。动手之前,我们先了解一些背景。在 \<CPU 提供了什么> 一文中介绍过,CPU 对外提供了运行机器指令的能力。那 CPU 又是如...