1. What does the EVM do?
The EVM runs on every node. Its purpose is to read each transaction/smart contract and tell the CPU what to do.
2. What is the format of the instructions that the EVM can read?
The format of the instructions is called Byte Code.
3. What is the relationship between the programming language Solidity and Bytecode?
Solidity is the programming language that devs use to write smart contracts and other applications. This code gets compiled into byte code which the EVM can read.
4. Why canât Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin cannot run the same type of complex programs as Ethereum can because it uses bitcoin script. This is not a Turing complete language. Therefore only simple things can be programmed such as multi-sig transactions.
5. What is a Turing Complete programming language?
A Turing complete programming language is one that can solve complex problems. In theory, it should be able to solve any problem. In practice, however, there are limitations such as runtime and memory.