diff --git a/calldata/README.md b/calldata/README.md index 409cd42..ea34db4 100644 --- a/calldata/README.md +++ b/calldata/README.md @@ -7,13 +7,17 @@
* calldata is the encoded parameter(s) sent on functions by smart contracts to the evm (for example, through `abi.econde()`,`abi.econcdeWithSelector() for a particular interfaced function, or `abi.encodePacked()` for efficient dynamic variables). + * `selector()` generates the 4-bytes representing the method in the interface: this is how the evm knows which function is being interacted. * each piece of calldata is 32 bytes long (64 chars), where 20 hex == 32-bytes + * types: - static variables: the encoded representation of `uint`, `address`, `bool`, `bytes`, `tuples` - dynamics variables: non-fixed-size types: `bytes`, `string`, dynamic and fixed arrays `[]` +* opcodes are 1 byte in length, leading to 256 different possible opcodes. the EVM only uses 140 opcodes. +
----