Homework on EVM

1 EVM is a program built on the ethereum networks that will executes the bite code. It allows the contract to be executed on the EVM instead of a personal CPU.

2 Bytecode

3 Solidity is the programming language used for Ethereum and bytecode is the executable code.

4 Bitcoin does not have Turing complete code.

5 It has the ability to handle any contract written. It can run loops and what-ifs. Non-TC can not.

1 Like
  1. The EVM is like a CPU. The EVM is an application that runs on each node in the Ethereum network, with access to each node’s CPU and all information that the node has access to. The EVM can read and execute smart contracts (similar to programs). The CPU does not directly execute the code, rather the EVM does, but the EVM uses many nodes’ CPUs. The EVM tells the CPU what to do.

  2. The EVM reads instructions in bytecode.

  3. Smart contracts are written in Solidity (easier to code) and then a compiler translates it into bytecode for execution by the EVM.

  4. Bitcoin cannot run the same type of complex programs like Ethereum because of the programming language used on bitcoin, script. Script does not allow for complex programming. Script is not Turing complete. Part of the rational is so that the Bitcoin network does not become spammed with repetitive/unnecessary transactions.

  5. A Turing Complete programming language is a language that can solve complex code/contracts/transactions. You can program anything that you can think of.
    A feature of Turing complete language is loops – which allows you to tell software to do something several times. This is one of the components missing from script, to avoid spam.

1 Like

1.- It is a program on the ethereum network that reads Smart Contracts and order the CPU to execute it.
2. Byte code
3.- The developer will create the smart contract using Solidity, which is a programming language similar to JavaScript, and with the use of a compiler those instructions will be compiled to byte code.
4 and 5- Because Bitcoin programming language (Script) is not turing complete, which means that cannot solve all mathematical problems.

1 Like

1- Ethereum Virtual Machine.
2- Solidiy language.
3- Solidity programs compiled into byte code to run on EVM.
4- Bitcoin is not turing complete.
5- It is a language that allows Loops.

.````````````````````````````````

1. What does the EVM do?

Ethereum Virtual Machine (EVM) makes it possible to execute on the ethereum network on what the instructions should be. It is a piece of code that all the CPUs of the computers in the network are running, responsible for executing contract bytecode, it can also read and execute smart contracts. All the nodes will execute the same set of code.

2. What is the format of the instructions that the EVM can read?

EVM reads bytecode as the format of instructions.

3. What is the relationship between the programming language Solidity and Bytecode?

Solidity is a high level programming language, when we compile the solidity code using the solc compiler, it will translate our code into bytecode, something only the EVM can understand. Bytecode is the hexadecimal representation of the final contract.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?

Bitcoin programming language is Script which is not Turing complete but Ethereum runs on Solidity programming labguage which is turing complete.

5. What is a Turing Complete programming language?

A Turing complete programming language, is one that have the capability of performing any possible calculation or computer program. It can help us to solve almost any problem whose problem statements are able to be formulated mathematically.

1 Like
  1. It reads smart contracts deployed on the Ethereum blockchain and is running on every Ethereum node.
  2. Bytecode
  3. Developers write in Solidity and then compile it to Bytecode.
  4. Because Script, the programming language Bitcoin is written in is not Turing Complete. You can’t do things such as looping, limiting the network’s capabilities.
  5. A programming language that allows you to write code that can do anything you think of, in theory.
1 Like
  1. The Ethereum Virtual Machine executes smart contracts.

  2. The EVM can read byte code.

  3. Solidity es the programming language of Ethereum. A compiler is used to transfer the code into byte code so that the EVM can read the smart contract(s).

  4. Because Bitcoin is not ‘turing’ complete.

  5. A ‘turing’ complete programming language is one that will have an answer for anything you write. It is usually a language that has infinite random access memory, conditional execution, and some form of repeated execution.

1 Like
  1. What does the EVM do?
    Its the intermediary process between Smart Contract code and the CPU.

  2. What is the format of the instructions that the EVM can read?
    Byte code

  3. What is the relationship between the programming language Solidity and Bytecode?
    Bytecode is compiled Solidity code.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because its not turing complete.

  5. What is a Turing Complete programming language?
    One that has a full feature set.

1 Like
  1. reads the script from the smart contract, and then sends instructions to the CPU.
  2. Bytecode
  3. Solidity translates the smart contract program language into Bytecode
  4. Bitcoin uses script instead of Bytecode. Script does not have the complexity needed to be Turing Complete, so it is very limited.
  5. It is a language that has no limits. As long as it is given the right coding, it can solve any problem, and perform operations as many times as you want it to.
1 Like
  • What does the EVM do?
    Reads and executes smart contracts
  • What is the format of the instructions that the EVM can read?
    Byte code
  • What is the relationship between the programming language Solidity and Bytecode?
    Solidity Compiles code into bytecode
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    because it use script which is a non turing language
  • What is a Turing Complete programming language?
    A language which you can program anything you want with loops
1 Like
  1. What does the EVM do?
    The evm runs ethereum on the blockchain.

  2. What is the format of the instructions that the EVM can read?
    Evm uses byte lcode to read code.

  3. What is the relationship between the programming language Solidity and byte code?
    Humans use solidity to program code on the evm and then is converted to byte code for the evm to process.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is not trueing complete where ethereum is.

  5. What is a Turing Complete programming language?
    A Turing complete language can complete any set of rules and commands it is given.

1 Like
  1. EVM reads byte code in smart contracts and uses cpu for processing power.

  2. EVM reads Byte code which are compiled thru solidity and viper.

  3. Solidity/Viper are programming languages for Ethereum which are then compiled into Byte code for the EVM to read.

  4. Ethereum runs on a turing complete language whereas Bitcoin runs on script which in not turing complete so it can only run simple programs like multi-sig.

  5. A turing complete programming language is infinitely programmable in theory and can execute functions such as loops.

1 Like
  1. What does the EVM do?
    An application that executes code on the Ethereum network.

  2. What is the format of the instructions that the EVM can read?
    EVM reads byte code format.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the program used to compile Bytecode.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin program, Script, is Not Truing Complete.Can’t solve all problems, only simple logic.

  5. What is a Turing Complete programming language?
    Turing complete is programming language that can solve, in theory, any problems that are programed.

1 Like
  1. The EVM is code that runs on each node in the network. This code reads smart contracts and therefore executes it by telling the cpu what to do.

  2. The EVM reads byte code format.

  3. The program is coded in solidity and is the compiled in by a compiler into byte code before it is deployed to the network.

  4. Bitcoin doesnt have a turing complete language, the official language of btc is script. Etherum’s solidity is however a turing complete language. This allows for etherum to program any type of dapps on the network whilst bitcoin’s language cannot program any type of application.

  5. A turing complete language is a language that can solve any problems that are written by its code.

1 Like
  1. The Ethereum Virtual Machine does is the system which executes all of the smart contracts on bitcoin.
  2. The EVM can read byte code.
  3. You can program in a regular programming language and solidity turns it into byte code for the EVM to read
  4. Bitcoin is not able to because it runs on script which is not a turing complete language
  5. A turing complete language has the potential to theoretically solve every single problem it could potentially be faced with.
1 Like

1.The Ethereum Virtual Machine is a piece of code run by all nodes in the Ethereum network that can execute Smart Contracts. Every node must run it to get the same result which provides consensus.
2. EVM Bytecode
3. Smart contracts are written in Solidity then run through a compiler which creates Bytecode.
4. Because its programming code is Script which is not Turing Complete.
5. It’s a programming language which is theoretically capable of performing any logical computational function. Solidity is a Turing Complete programming language.

1 Like
  1. What does the EVM do?
    EVM executes the smart contract commands and gives instructions to CPU of the node.
  2. What is the format of the instructions that the EVM can read?
    byte code
  3. What is the relationship between the programming language Solidity and Bytecode?
    a compiler converts the solidity code into byte code.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    because its programming doesn’t contain loops.
  5. What is a Turing Complete programming language?
    a language that can implement advanced conditions and complete programs.
1 Like
  1. What does the EVM do?
    The Ethereum Virtual Machine or EVM is the runtime environment for smart contracts in Ethereum.

  2. What is the format of the instructions that the EVM can read?
    EVM uses a set of instructions (opcodes) to execute specific tasks.

3. What is the relationship between the programming language Solidity and Bytecode?

Smart contracts are often written in solidity; In order to efficiently store opcodes, they are encoded to bytecode.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?

Because Bitcoin’s programming language, Script, is not turing complete, which is limited to make programming.

  1. What is a Turing Complete programming language?
    Turing Complete programming language can compute (almost) anything if given enough resources.
1 Like
  1. What does the EVM do?
    Ethereum Virtual Machine reads the code or instructions from the smart contract and deploys it out to CPUs on the network. All CPUs recieve same so that they can all come to a consensus.

  2. What is the format of the instructions that the EVM can read?
    Formatting instructions that the EVM can read are called BYTE.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is turing complete (can do anything you tell it to) but must be compiled into BYTE first so that the EVM can read the code. Otherwise without EVM code could be compromising the entire network of CPU’s on the network.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    BTC block size too small especially with such things as ‘Loops.’ This would or could cause a spamming effect on the network which would then create the problem of blocks not being big enough to support.

  5. What is a Turing Complete programming language?
    A turing complete programming language is a language that completes whatever it is told to do.

1 Like