# evm
5 篇原创2023/10/01
EVM 内存布局深入解析 EVM 内存的底层布局与操作规则,介绍 MSTORE、MSTORE8、MLOAD 操作码的使用方式,讲解 Solidity 编译器对内存的默认分配策略(0x00–0x3f 暂存区、0x40 空闲指针、0x80 起始可用区),并结合 Yul 汇编示例说明内存分配与释放的实际行为。
转载2022/05/12
【译】Solidity 内联汇编 - Part 2译文:系列终章,挑战用纯 Yul 汇编语言编写完整的 Box 合约,从函数分发器(Dispatcher)到具体函数体完整实现,深刻体会 EVM 底层的执行机制,对理解合约字节码、Gas 优化与安全漏洞分析具有重要价值。
转载2022/05/11
【译】Solidity 内联汇编 - Part 1译文:延续第零篇的 EVM 基础,本文进入实战阶段,使用 Yul 汇编语言重写 Box 合约的 store() 和 retrieve() 函数,深入讲解 sstore 与 sload 操作码的用法、函数选择器的手动解析方式,以及如何在内联汇编中处理参数读取与返回值编码。
转载2022/05/10
【译】Solidity 内联汇编 - Part 0译文:从 EVM 底层架构出发,介绍内联汇编(Inline Assembly)的基础概念与使用场景,包括 EVM 的栈式执行模型、操作码(Opcode)工作原理,以及在 Solidity 中使用 assembly {} 块的语法规范,为深入理解底层合约优化打下基础。
原创2021/10/02
EVM 变量存储布局规则深度解析 EVM 状态变量的存储布局规则,以图解方式说明存储槽(Slot)的分配逻辑,包括基本类型的槽位占用、结构体的紧密打包规则、动态数组与 mapping 的哈希定位方式,对合约安全分析与 Gas 优化均有重要指导意义。