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.