Homework on EVM

  1. What does the EVM do?
    The EVM is the Etheruem Virtual Machine, is a collection of all ETH nodes on the network can can execute ETH based smart contracts.
  2. What is the format of the instructions that the EVM can read?
    Bytecode
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the coding language of the smart contracts, the EVM complies them into bytecode to execute them.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin is not Turing Complete.
  5. What is a Turing Complete programming language?
    Turning Complete is a loop feature that allows for it to repeat a task.
1 Like

it is a virtual machine that runs the smart contracts on the ethereum blockchain
2. bytecode
3. you can write your comandes for the smart contract with Solidity but they need to get compiled to bytecode because the smart contract is in bytecode
4. because it should not get spammed, it should just be digital gold
5. turing complete programming language means you can write a program that will find a answers…I believe I heard about the turing test for AI

1 Like
  1. it’s an application that acts intermediately between the smart contract and the node’s cpu (it’s in every node of the network). It’s presente mainly for security reasons. The EVM reads the smart contract’s code and tells the computer’s CPU to execute its instructions.

  2. While the instructions are usually written in Solidity, they are compiled in byte code via a compiler and read by the EVM as such, that is in byte code.

  3. Solidity a high level programming language which is then compiled in byte code so that the EVM can read it and utilize those instructions by relaying them to the node’s CPU.

  4. & 5. Because Bitcoin’s programming language (Script) isn’t a Turing complete programming language, therefore it “can’t do anything you can think of” as opposed to other Turing complete programming languages (like Solidity).

1 Like
  1. The EVM reads and executes the Bytecode of smart contracts and every node has a copy. Using the EVM protects the node’s cpu in the network.
  2. Reads Bytecodes.
  3. EVM can read Solidity language through Bytecode.
  4. Script is not Turing complete so it doesn’t have as many functions as Solidity.
  5. A Turning complete program allows loops and can execute any math problem.
1 Like

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

Quite close sir, but Solidity is the programming language that you use to create/design smart contracts, after that, it will be compiled into ByteCode, so the format of the instructions that EVM reads is Bytecode.

5.What is a Turing Complete programming language?

Indeed, but that could be one of the abilities of the Turing Complete programming language, could you please describe it in general terms?

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

Carlos Z.

  1. The EVM is software that runs on top of each computer node participating on the Ethereum network. EVM allows for smart contracts to be executed without using the Node’s CPU directly.

  2. The EVM reads the bytecode.

  3. Solidity is the programming language used to write smart contracts. A special application is used to compile the logic and instructions in the Solidity language and compiles it down to byte code for the EVM to read the smart contract.

  4. Bitcoin is unable to run the same types of complex programs because is it written in a non-turing complete language. Bitcoin script is primitive and simple- yet incredibly effective at what is does.

  5. A turing complete programming language is a computational language that can theoretically solve all complex problems. For a programming language to be turing complete it must have “if…then…else…” statements and it must have an arbitrary amount of memory.

1 Like
  1. EVM is a piece of code on all computers on the network. It is built on top of existing hardware of the nodes. EVM will read/take a look at the instructions and execute it. It will tell what the computers to do. To reach a consensus like bitcoin, all the nodes on etherium have to come to the same result to create a consensus.
  2. It reads the byte code.
  3. It is a special application that takes the solidty code and compiles the logic and instructions and then compiles this into a byte code.
  4. Because it is not turing complete.
  5. Solidty is a turing complete programming language.
1 Like

1: The EVM is a sandboxed virtual machine that runs on top of each node participating in the ethereum network. It reads and executes smart contracts.
2: Bytecode.
3: Solidity is easier for humans to write. A compiler translates it to bytecode which the EVM reads and executes.
4: Bitcoin coin only uses script which is not a Turing complete language.
5: Turing complete languages, such as solidity, can run loops and theoretically solve any problem.

1 Like
  1. it reads the bytecode and executes it by instructing the cpu. also it secures your cmputee: without evm a smart contract could directly order the cpu to send private informations to someone.
  2. bytecode
  3. the smartcontract is written in solidity but will be cmpiled into bytecode so the evm can read it
  4. because the code used in btc is script which is not turing complete
  5. it can theoretically solve any problem
1 Like
  1. An EVM reads the Bytecode and executes it to the CPU. Without the EVM, smart contracts would work with the CPU directly. EVM’s are able to work with multiple languages because it is simply reading the Bytecode, therefore making the entire system more secure and usable.

  2. EVM’s work with Bytecode.

  3. Solidity can be converted into Bytecode and read by the EVM. Solidity is simply a programming language that makes it easier for humans to program in.

  4. Bitcoin does not run on a Turing Complete programming language. Therefor it cannot have complex smart contracts running on it.

  5. Turing Complete programming languages allow for loops. Loops are what make programming languages capable of performing complex tasks over and over again. This is what allows smart contracts to operate effectively and theoretically solve any problem.

1 Like
  1. The EVM runs on the hardware of all of the cpus in the eth network. It allows you to execute the the terms of the of a smart contract by deriving consensus by all of the operating nodes in the network.

  2. Bytecode

  3. Solidity is the programming language used with the eth network that compiles the terms into Bytecode.

4.BTC is not Turing complete, which means that the language in BTC is limited in what can be programmed as its designed to simply be a digital currency or store of wealth. Ex. you cannot program Loops in BTC.

  1. A Turing Complete programming language allows for broader and more specific programming and scripting and gives devs the ability to create any new application at least in theory.
1 Like
  1. It reads the smart contract and pass the information to the CPU for execution
  2. Byte code
  3. There’s a compiler which compiles the solidity language to byte code and inserts that into the smart contract
  4. Because BTC runs on a programming called script which is not turing complete
  5. A language which can solve any problem
1 Like
  1. The ethereum virtual machine is a virtual environment that runs smart contracts on the ethereum blockchain.

  2. The format of EVM instructions is byte code

  3. Solidity is the programming language developers use to write smart contracts and bytecode is the language understood by EVM

  4. This is because bitcoin is not turing complete while ethereum is

  5. A turing complete language is programming language that gives full program ablity.

1 Like
  1. What does the EVM do?
    It processes compiled smart contract code on Etherium nodes.

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

  3. What is the relationship between the programming language Solidity and Bytecode?
    Bytecode is the output of compiling Solidity source code. EVM cannot interpret solidity code as is. That code has to be compiled to Bytecode to be understood by EVM.

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

Because its programatic language Script is not Turing-complete.
Bitcoin’s blockchain is optimized for Bitcoin to be a storage of value and not to compute complex code.

  1. What is a Turing Complete programming language?
    It is a programming language able to compute any function described by an algorithm including loop processing.
1 Like
  1. What does the EVM do?
  • EVM is a virtual machine that lies within every computer/node on the Ethereum Blockchain that holds smart contract code that instructs the blockchain what to do.
  1. What is the format of the instructions that the EVM can read?
  • Byte Code
  1. What is the relationship between the programming language Solidity and Bytecode?
  • Solidity, similar and readable like Javascript, is a programming language that compiles information to byte code so that the EVM can read the information.
  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • Because it is not Turing complete. It cannot solve more complicated problems that one might want to solve. BTC runs on script, which can only run very primitive programs i.e. multi-signature.
  1. What is a Turing Complete programming language?
  • It makes a program, such as Solidity or Viper, completely flexible in the sense that one could theoretically program anything that one could think of to program. There is no limit to what one could program that is Turing complete. One of the ways that this is done is through Loops.
1 Like
  • What does the EVM do?
  • What is the format of the instructions that the EVM can read?
  • What is the relationship between the programming language Solidity and Bytecode?
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • What is a Turing Complete programming language?
  1. EVM is an application that reads and executes the smart contract.
  2. The format in which smart contracts are written in is byte code. Which is derived form solidity.
  3. Bytecode is derived from Solidity to format the smart contracts.
  4. Bitcoin can run complex programs like ethereum because its program language is Script. Script is a programming language that is very limited in functionalities/utility (not turing complete).
  5. Turing complete programming language is a type of language that makes it possible to program anything you’d like to program. Any logic, program, or service you want to create you can do with solidity.
1 Like

1.E V M is essential in the ethereum protocol, running in each node executing contracts, by code .
This contracts are written in languages like solidity ,then compiled into EVM by code .
2.
the format is Bye Code
3._ solidity write the code and Bye code read the instructions in the EVM
4._ because is not turning complete is just a script programing ,Ethereum with the EVM and solidity can performs more complex tx.
5._ is the programming allowed to make loops.

1 Like
  1. The EVM runs on all nodes and executes smart contracts.
  2. EVM reads bytecode after it was compiled from another programming language.
  3. Solidity can be compiled into bytecode for the EVM to read.
  4. Bitcoin blockchain developers wanted to maintain a high level of security by keeping programs simple.
  5. Turing Complete programming languages give you the ability to create anything, theoretically.
1 Like

1. What does the EVM do?
it executes the smart contracts by turning into readable code for the cpu
2. What is the format of the instructions that the EVM can read?
The EVN reads byte code
3. What is the relationship between the programming language Solidity and Bytecode?
solidity are the programs which are formatted into byte code for the EVN to execute
4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin doesn’t have a turing completer programming language which means it cant solve complex problems
5. What is a Turing Complete programming language?
a turing complete programming language allows you to creat smart contract and make calculations using those smart contracts

1 Like
  1. Run the smart contract code instead of the cpu.
  2. byte code
  3. Solidity have the compiler for the byte code.
  4. Because Script is very limited by design because of size and security.
  5. I can program everything I can imagine.
1 Like