EVM 学习手册

EVM 学习手册 , 帮助我们了解以太坊虚拟机的底层原理。

这个手册是为有抱负的超级开发者策划的EVM学习的资源清单。

在第一性原理的思考中,你把事情归结为最基本的真理,然后你从那里推理。

---- Elon Musk

在智能合约领域,"以太坊虚拟机" 以及其算法和数据结构就是第一性原理。


Jordan McKinney - EVM解释

从单个合约层面和以太坊的整体世界状态深入解释EVM的视频。

  • EVM 解释(Youtube)

Andreas Antonopoulos - 以太坊虚拟机

涵盖了EVM如何工作的基本原理,并展示了EVM如何与协议层互动。

  • 第13章 - 以太坊虚拟机

Openzepplin - 解构Solidity合约

一组博文,帮助你了解solidity代码是如何被EVM解释和执行的。

  • 第1部分 - 介绍
  • 第2部分 - 运行时间与创建字节码
  • 第3部分 - 函数选择器
  • 第4部分 - 函数封装器
  • 第5部分 - 函数主体
  • 第6部分 - 元数据哈希

Noxx - EVM 深入探索

一组博客文章,深入EVM的特定部分,让你从solidity代码到EVM的操作代码。

  • 第1 部分 - 函数选择器深入分析
  • 第2部分 - EVM中的内存
  • 第3部分 - EVM中的存储
  • 第4部分 - Go Ethereum(Geth)客户端的存储操作码
  • 第5部分 - 委托调用深入研究

Karmacoma - 从零开始构建一个EVM

一组博文,用Python从头开始实现EVM,参考Ethereum黄皮书并涉及EVM的机制

  • 第1部分 - 基本执行环境
  • 第2部分 - Branching指令

Femboy Capital - A Playdate with the EVM

一篇博文介绍了EVM的基本概况,在向我们展示如何编写一些汇编之前,解释了堆栈的工作原理。

  • Part 1 - A Playdate with the EVM

Takenobu T. - EVM图解

PPT演示,提供了奇妙的视觉效果,不仅展示了EVM是如何工作的,而且还展示了世界状态(存储),交易如何操作世界状态,以及更多。

  • EVM图解

EVM代码 -- 操作码 的 EVM Playground

一个互动的网站和EVM Playground。对EVM开发者来说是最有价值的工具之一。它包含一个所有操作码的列表,以及描述和一个你可以观察它们如何工作的Playground。

  • https://evm.codes

Fvictorio - EVM Puzzles

GitHub上的交互式 EVM 谜题集,这些谜题可以帮助你巩固从其他资源中学到的知识。

  • https://github.com/fvictorio/evm-puzzles

  • EVM 谜题详解专栏

Daltyboy11 - 更多EVM谜题

Fvictorio的互动式EVM谜题的 "第二部分",有一组新的挑战,这些谜题同样可以帮助巩固你的学习。

  • https://github.com/daltyboy11/more-evm-puzzles

区块链程序 -- 智能合约存储

一篇博文,对合约存储的数据结构做了很好的概述

  • 了解以太坊智能合约存储

Jeancvllr - EVM Assembly

一篇关于EVM汇编、操作码和在solidity中使用汇编的博文。

  • Solidity Tutorial All About Assembly

Peter Robinson - Solidity到字节码、内存和存储

一段深入的视频,介绍了合约如何被编译成字节码,如何处理其内存/存储,以及如何被EVM解释。

  • EVM从Solidity到字节码、内存和存储

Marek Kirejczyk - Ethereum 背后的秘密

一段深入的视频,探讨了用于存储Ethereum世界状态的算法和数据结构。

  • Ethereum 背后的秘密: 算法与数据结构

官方Solidity文档

官方Solidity文档,介绍如何在solidity合约中处理存储、内存和calldata。

  • 存储中的状态变量布局
  • 内存中的布局
  • Calldata的布局

本文参与区块链技术网 ,好文好收益,欢迎正在阅读的你也加入。

  • 发表于 2022-09-27 10:27
  • 阅读 ( 1869 )
  • 学分 ( 300 )
  • 分类:以太坊

评论