EVM behavior
EVM behavioral specification
Notes on the EVM: straightforward technical specification of the EVM plus some behavioral examples
EVM: From Solidity to bytecode, memory and storage: a 90-minute talk from Peter Robinson and David Hyland-Wood
EVM illustrated: an excellent set of diagrams for confirming your mental model
Opcode reference
evm.codes: opcode reference (including gas costs) and an interactive sandbox for stepping through bytecode execution
Solidity storage layout
The EVM allows smart contracts to store data in 32-byte words ("storage slots"), however the details of how complex datastructures such as lists or mappings is left as an implementation detail to the higher-level language. Solidity has a specific way of assigning variables to storage slots, described below:
Last updated