Homework on EVM

  1. EVM runs on all ETH nodes and reads the smart contract code to enable consensus algorithm.
  2. The format is EVM Byte Code
  3. The instructions are first written in the Solidity programming language then compiled into EVM Byte Code which the EVM reads and executes.
  4. Bitcoin is not Turing Complete.
  5. Turing Complete programming language have loops which allow software to do 1 thing serveral times.
1 Like
  1. EVM is a program running on each full Ethereum now with is responsible for executing Smart Contract bytecode.
  2. Format is binary
  3. First you program your smart contract in Solidity programming language. After you compile and deploy it is loaded as a bytecode to EVMs for processing.
  4. The main reason Bitcoin can’t run complex programs like Ethereum is by design agreed on by most developers and miners. At this point Bitcoin using Script for basic programming.
  5. Turing complete language can use loops and other instractions to be executed.
  1. The EVM reads the Smart contract in EVM byte code and translates to the CPU to execute the instructions

  2. EVM Byte code

  3. Solidity uses a compiler to compile the smart contract into Byte code

  4. Bitcoin language Script is not Turing complete

  5. A Turing complete programming language can solve complex problems and can have loops running instructions over and over

1 Like

1.EVM stands for Etheruem Virtual Machine which executes code. It is distributed in all computers and all nodes must agree to run. It also enhance security by isolating individual contract codes and isolates base OS.
2.The EVM reads byte codes
3.Solidity is compile into bytes code using a compiler, and byte codes runs through the EVM on a CPU of a node.
4.It is not turing complete because it uses script programming which has no looping features.
5.A turing complete programming language is a programming language that allows users to do whatever they want, because it is flexible.

1 Like

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

Quite close sir(s), but the format of the instructions that EVM read is ByteCode.

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

  1. EVM reads and executes the codes of the smart contracts.

  2. Bytecode.

  3. Solidity is the language used to write the smart contracts, which is then translated to bytecode that is read by the EVM.

  4. Because it uses a script code language, which is a non turing complete language, meaning it is not able to perform complex operations.

  5. A turing complete programming language can perform complex operations and commands.

1 Like
  1. What does the EVM do?
    The EVM isolates Ethereum byte code in a virtual machine.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is a higher level language that compiles down to a machine like byte-code that runs in the EVM.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin has a simpler scripting language without a Turing complete set of operations.

  5. What is a Turing Complete programming language?
    Turing completeness is a proposed set of operations a computer should be able to do. A Turing complete language is a programming language that implements all of those operations.

1 Like

1- EVM (Ethereum Virtual Machine) sets an environmental parameter in which smart contracts are run and executed through nodes
2- EVM can read bytecode instructions
3- Solidity can be “translated” to bytecode via a compiler
4- Bitcoin can’t run the same type of complex programs as Ethereum because it is written in a non-Turing complete language, script
5- A language is Turing complete if it can solve complex computable problems

2 Likes

Thanks Carlos. perfect.

  1. EVM serves as a translator of programming languages allowing you to execute code so that you may gain consensus.

  2. EVM can read Byte code.

  3. Solidity is used to translate the Bytecode.

  4. Bitcoin could run the same type of programs but doesn’t choose to do so due to spamming or malicious activity of the network. Bitcoin is not Turing Complete so it needs Ethereum in order to provide Solidity which is a true and complete language.

  5. A turing complete language means that the program can solve all problems.

2 Likes
  1. The EVM is an app that reads an ethereum smart contract and instructs the CPU what to actions to execute.

  2. The format that the EVM can read is EVM byte code.

  3. Solidity is the programming language used on Ethereum which then converts info to Bytecode for the EVM to read.

  4. Bitcoin can’t run the same type of complex programs that Etherum can because Bitcoin runs on a more simple type of program language called Script which is not Turing Complete, which means it cannot solve all problems.

  5. Ethereum’s Solidity is a Turing Complete programming language which means it can execute anything you program.

1 Like
  1. The EVM is a single, global, collective computer that executes the functions of smart contracts and monitors their states.

  2. EVM Byte Code

  3. Instructions are written in Solidity and then compiled into Byte Code for execution.

  4. Bitcoin was programmed for currency use cases specifically and its programming language, Script, is not Touring complete.

  5. A Touring complete language can carry out any calculation that can be described.

1 Like
  1. The EVM reads the smart contracts and protects against threats.
  2. It reads Byte-code ie Solidity.
  3. Smart contracts are created in Solidity, then are turned into byte-code for the EVM to read.
  4. Bitcoin programming is not Turing complete.
  5. A Programming language that can solve most problems.
1 Like
  • What does the EVM do?

  • EVM is a virtual machine that serves to isolate the node or the user’s computer from the Ethereum network, it is also the “middle man” or layer between the node’s resources and the network. any smart contract or dapp built on the Eth network will run on the EVM which will use the node’s resources (CPU, RAM, etc) as well communicate with the rest of the Eth network.

  • What is the format of the instructions that the EVM can read?

  • The EVM can read Byte Code.

  • What is the relationship between the programming language Solidity and Bytecode?

  • Solidity is a high-level programming language - It is a human-readable programming language.
    When the program is compiled it is compiled in Bytecode.
    Bytecode is a low-level programming language i.e. machine code.
    the EVM itself uses Bytecode as it can more efficiently execute commands that way.

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

  • Bitcoin runs on blockchain 1.0 and doesn’t currently (natively at least?? not sure - lightning network??) run smart contracts and therefore is not able to utilize an EVM or BVM even.

  • What is a Turing Complete programming language??

  • A Turing complete programming language is a language that is capable of tasks such as automation through “loops” for example.

2 Likes
  1. EVM executes smart contracts
  2. Bytecode
  3. Solidity is the language that is used to write code . The code is compiled into Bytecode and EVM
    executes.
    4.It is not Turing complete.
  4. A language that allows you to do anything you want to. Programmable. e
1 Like
  1. EVM reads the smart contracts then runs the code on the CPU
  2. Bytecode
  3. Solidity is the programming language used to write smart contracts and it has a compiler that converts the code into Bytecode.
  4. Bitcoin does not have a programming language that is turing complete while Ethereum does.
  5. A programming language that has enough functionality to perform any task you could think of.
1 Like
  1. What does the EVM do?

EVM is the middle man between a programing script/instructions and a CPU, basically it will read and execute instructions.

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

The format or file is called Bytecode

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

Bytecode is the set of instructions in a language, and solidity is the language used.

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

Bitcoin is very simple and the codes are non turning codes. Meaning it cannot handle much of the complex codes.

  1. What is a Turing Complete programming language?

Turing complete programing is a very comprehensive code and instructions, one unique aspect is that it can execute a loop that will repeat a set of instructions many times.

1 Like
  1. The EVM (Ethereum Virtual Network) is an application that runs on all the nodes of the Ethereum network. It is an application that allows the nodes to execute the smart contracts on the ethereum network.

  2. The EVM executes instructions it receives in Bytecode.

  3. Solidity is the programming language used to write smart contracts for the Ethereum network. The contracts are then compiled into Bytecode which the EVM can execute.

  4. Bitcoin uses a simple non turing complete programming language called Script. It is limited and cannot be used to solve complex programming problems.

  5. A Turing Complete programming language is a programming language that can completely simulate a Turing machine.

1 Like

The EVM executes the code of the Smart Contract and verifies the solution. If the verified solution reaches a consensus among the other nodes in the network it is added the the blockchain.

EVM reads bytecode.

Solidity is a scripting language, it is compiled into EVM readable bytecode.

Bitcoin lacks the EVM, it therefore can’t execute code.

It is a programming language that in theory can solve any problem.

1 Like
  1. What does the EVM do?

– Ethereum Virtual Machine executes programmable instructions. It then gives the CPU instructions on wat to do. In this way it protects the CPU from possible malicious instructions.

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

Bytecode

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

– Like JS , Solidity compiles Bytecode

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

– Bitcoin runs on script which is not a turing complete coding language. Script has limited possibilities.

  1. What is a Turing Complete programming language?

– A turing complete programming language has endless possibilities.

1 Like