GoForum › 🌐 V2EX

[大年初一造轮子] 为了搞懂以太坊,我用 JS 手搓了一个 64 位 EVM (附 Web 调试器)

freekindom · 2026-02-17 21:02 · 0 次点赞 · 1 条回复

大家新年好。

大年初一,走了一天亲戚,客套话说尽了。晚上躲清静,把最近写的这个“玩具”整理了一下,发出来给大家解解闷。

这是一个 64 位 的以太坊虚拟机 (EVM) 实现。

这个轮子有什么不同?

  1. 64 位架构:不同于标准的 256 位 EVM ,我把它改造成了 64 位。这样更轻量,也更贴近 CPU 的原生逻辑,跑在 JS 引擎里也更顺滑。
  2. 可视化堆栈:这是我觉得最好玩的部分。写了一个简单的 Web 界面,可以直观地看到 Stack、Memory 和 PC 指针。
  3. 图灵完备:目前实现了基础运算、位操作、逻辑控制和跳转。虽然还在 v0.1 阶段,但已经可以跑通循环算法了。

截图

EVM Web UI

碎碎念

目前项目还在早期 (v0.1),功能还很简陋。 发出来是想找找同好。如果你对虚拟机原理、解释器构造感兴趣,或者也是正在 Gap 的程序员,欢迎来 Star 或 提 Issue 聊两句。

接下来的计划是攻克 CALL 和 DELEGATECALL,希望能坚持下去。

Repo 地址: https://github.com/picasso250/js-evm

1 条回复
lxmfly123 · 2026-02-17 21:07
#1

一眼 AI

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: freekindom
发布: 2026-02-17
点赞: 0
回复: 0