## evm and opcodes
### tl;dr
* the evm is a quasi-turing complete machine (quasi because computation is intrinsically bounded/limited through a parameter: gas). it's the runtime environment for smart contracts. * the evm memory is a simple stack-based architecture with: stack, volatile memory, non-volatile storage (word size of 256-bit) and calldata.
--- ### chapters
* **[my favorite opcodes](my_favorite_opcodes.md)**
--- ### cool resources
* **[opcodes for the evm](https://ethereum.org/en/developers/docs/evm/opcodes/)** * **[opcodes and instruction reference](https://github.com/crytic/evm-opcodes)** * **[evm contract construction](https://blog.smlxl.io/evm-contract-construction-93c98cc4ca96)** * **[ethersplay](https://github.com/crytic/ethersplay)** * **[ida evm](https://github.com/crytic/ida-evm)** * **[ethereum book](https://github.com/ethereumbook/ethereumbook)** * **[ethereum's whitepaper](https://ethereum.org/en/whitepaper/)**