Machine-readable instructions differ from human-readable Solidity.
LET’S PICTURE IT
A recipe written for a cook and instructions encoded for a kitchen machine express related operations in different forms.
SEE IT FOR YOURSELF
Watch a stack machine execute a tiny programStep 1 / 4
The program bytes are PUSH1 02, PUSH1 03, ADD, STOP. The program counter begins at byte zero.
The program bytes are PUSH1 02, PUSH1 03, ADD, STOP. The program counter begins at byte zero.PUSH1 reads its next byte as an immediate value and places two on the stack. The next instruction begins at byte two.The next PUSH1 places three above two. Stack order matters for operations that are not commutative.ADD consumes the top two values and pushes five. The next instruction is STOP at byte five; no storage write is implied by ADD.
Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.
The EVM executes encoded instructions
Bytecode is a sequence of bytes interpreted according to EVM rules. Instructions can manipulate the stack, read call input and interact with memory or storage. A contract’s source code is not directly read as English during execution.
Compilation chooses a representation
A Solidity compiler turns source and settings into executable artifacts. Different compiler versions, optimization choices and linked dependencies can affect the produced bytes. The exact build context matters when comparing source with deployment.
Creation and runtime code differ
Creation code runs when creating a contract and returns the runtime code to install. Constructor-only logic is not simply another normal callable function in the deployed runtime interface.
Bytecode is not an ABI
An ABI describes how applications encode and decode an interface. It is not the machine implementation of every permission and branch. Explore the EVM stepper for a tiny instruction example, then compare that with the ABI lab’s function request.
QUICK CHECK · NO PRESSURE
Does an ABI contain every instruction executed by a contract?
The ABI describes the interface. Bytecode contains the executable implementation.