The EVM has a stack-based architecture,
works with a word size of 256 bits,
and has these data components:
1) An immutable program code ROM, with the bytecode of the smart contract to be executed.
3) A permanent storage, part of the Ethereum state, also zero-initialized.