Homework on EVM

  1. What does the EVM do?

The EVM is similar to the CPU on your computer instructing it to perform specific actions. It reads smart contracts and tells the CPU of the node what to do. The EVM also acts as a security guard for the computer ensuring that the smart contract does not take over the computer.

  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?

Each node has a compiler that takes the smart contract instructions written in Solidity and then compiles the logic and instructions into Bytecode, so that the EVM can read the instructions from Solidity.

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

The scripting language in Bitcoin is not turing complete.

  1. What is a Turing Complete programming language?

It can solve complex problems, allowing for the functionality of smart contracts. Anything can be programmed with a Turing Complete programming language. Turing complete languages have loops. A loop is a feature of a programming language that allows you as a programmer to tell software to do one thing several times.

1 Like
  1. The EVM executes machine code, isolates the base OS, isolates individual contract code, and all distributed nodes agree to run.
  2. The format of the instructions is Solidity.
  3. The relationship between solidity and bytecode is the solidity compiles the bytecode to read the instructions.
  4. Bitcoin can’t run the same type of complex programs because it runs on script and it is not Turing complete.
  5. Turing complete can instruct code to repeat, or loop.
1 Like

1.EVM runs the smart contrect.
2.EVM can read byte code.
3.byte code is the relationship beween computer language and EVM.
4. Because Bitcoin has a simple script and Ethereum have complete programing language.
5. Ethereum is a
Turing complete programing language.

1 Like
  1. EVM makes it possible to execute code on the network in such a way that all the nodes are able to be in consensus about what the results should be.
  2. Byte Code
  3. Solidity iis a readable language that can be compiled into byte code.
  4. Because it is not ā€œTuring Completeā€.
  5. A programming language that can solve all the problems it might need to solve in a programming app - Solidity is a Turing Complete language.
1 Like
  1. What does the EVM do?
    The Ethereum Virtual Machine (EVM) is a powerful, sandboxed virtual stack embedded within each full Ethereum node, responsible for executing contract bytecode.

  2. What is the format of the instructions that the EVM can read?
    The EVM reads, interprets and executes the smart contract in an isolated program, rather than directly on the CPU. This reduces the likelihood of malicious code built within a smart contract affecting the computer running the EVM. Contracts are typically written in higher level languages, like Solidity, then compiled to EVM bytecode.

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is a programming language for small contracts. It has a compiler which interacts with the bytecode.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin runs on script that is not Turing Complete

  5. What is a Turing Complete programming language?
    A Turing Complete language makes coding possible for a limitless number of applications. It also has the looping feature which allows repeat functions.
    .

1 Like
  1. EVM reads and executes the smart contract directly and tells the CPU to execute.
  2. Byte Code
  3. Solidity is a language that goes into a complier which transforms it to byte code which is then read by the EVM.
  4. Bitcoins programming language (script) is not turing complete and has limited functionality
  5. A Turing complete language is in theory capable of solving any computational problem.
1 Like
  1. What does the EVM do?
    It executes bytecode derived via compiled Solidity code. It uses a native machine CPU to execute commands.

  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 compiled down to Bytecode

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Script isn’t Turing complete language

  5. What is a Turing Complete programming language?
    A language that supports loops and complex operations

1 Like

1. What does the EVM do?
EVM (Ethereum Virtual Machine) reads and executes a program’s set of instructions (smart contracts). It’s installed in all nodes on the ethereum blockchain, which provides security and the validity of the code.

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

3. What is the relationship between the programming language Solidity and Bytecode?
Solidity compiles it’s code into Bytecode so the EVM can read and execute it.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Because bitcoin is written in a language called ā€˜Script’. Since script is not a ā€˜Turing complete’ language, complex tasks like smart contracts can’t be run.

5. What is a Turing Complete programming language?
A Turing Complete (TC) language allows for programming complex mathematical operations and tasks.

1 Like
  1. An EVM is an applications that runs on top of the hardware of CPUs in the nodes, that is able to read and execute smart contracts.

  2. Bytecode is the format that the EVM can read.

  3. The relationship between Solidity and Bytecode is that, Solidity is the programming language used to write the smart contracts which is then sent through a compiler, which then compiles it down into Bytecode that can be read by the EVM.

  4. Bitcoin is unable to run the same complex programs because it is written in Script which is not Turing Complete.

  5. Turing Complete Programming Languge allows for looping so that the EVM can execute the instructions of the smart contract multiple times and allow for changes and adaptations.

1 Like
  1. It reads the Byte Code and tells the CPU to execute the terms of smart contracts
    2.EVM reads the Bytecode from the Solidity compiler
  2. The smart contracts are written in Solidity. The Solidity compiler takes code and compiles
    logic and instructions into Bytecode then the EVM reads the Bytecode.
    4.Bitcoin has script like multi sig contracts. Scripts is not Turing complete. It is not able to solve all problems. It is limited. Bitcoin did not implement due to spamming loops and block size limitation.
  3. Turing complete language contains Loops which tell the program perform a set of functions once, then loop back to perform again.
1 Like
  1. EVM provides the secure environment inside which smart contract codes are executed.
  2. The EVM can read instructions that are compiled into byte codes.
  3. Programs that are written in solidity are compiled into byte codes.
  4. Bitcoin blockchain cannot run turing complete programming languages.
  5. Turing complete programming language can run loops.
1 Like

The EVM runs smart contracts in a secure environment in EVM byte code on nodes.

The format of the instruction is Bytecode.

The relationship between language solidity and bytecode is that the instructions given in solidity will be compiled into Bytecode. The compiler is a special application for this use case.

Bitcoin can’t run on the same type of complex programs like Ethereum because the programming language script isn’t Turing complete. This language isn’t capable to execute complex programs.

A Turing complete programming language (as solidity) can solve (theoretically) anything. It can also run loops what programmers allows to tell software to do one thing several times what is important for smart contracts in some cases.

1 Like
  1. What does the EVM do? Makes it possible to execute code on the ethereum network in such a way that we are all in consensus about what the result should be

  2. What is the format of the instructions that the EVM can read?
    It can read and execute smart contracts in solidity programing language but then compile into EVM bytecode

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity can compile into byte code so the EVM can read the instructions

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because bitcoins programing language script is not Turing complete while solidity in ethereum is Turing complete

  5. What is a Turing Complete programming language? It is a language that lets you create anything you want, anything you can think of can be done

1 Like
  1. The EVM is an environment, where different smart contracts and code can run safely. This without beeing at risk of one contract maliciously phishing data or information of other code. It’s basicly running all this different kind of sandbox environments virtually.
  2. The smart contract language is Solidity, but because the EVM can not directly execute Solidity it uses it is compiled in a lower level machine language called Opcodes.
  3. Bytecode is used to store the Opcodes needed to translate from Solidity to EVM interpretable code.
  4. Bitcoin by design was not made to execute smart contracts. Just as peer-to-peer digital currency. BTC is not Turing Complete is.
  5. A programming language is said to be Turing-complete or computationally universal if it can be used to simulate any Turing machine. This means that this system is able to recognize or decide other data-manipulation rule sets. Turing completeness is used as a way to express the power of such a data-manipulation rule set. Virtually all programming languages today are Turing-complete.
1 Like
  1. Reads smart contracts that then tells the CPU(s) what to do, all within consensus of the network.

  2. EVM reads the bytecode format which is compiled from whatever programing language that’s used.

  3. Solidity compiles its code into bytecode in order for EVM to read

  4. Because bitcoin uses script as its programing language and script is not a Turing complete language.

  5. Theoretically a language that lets you do anything you can think of and use things such as Loops.

1 Like

1-EVM (Ethereum virtual machine) is a piece of code all computers run on top of the node of the ETH Network. EVM is middleware that protects the CPU from malicious code.
2-EVM Bytecode
3-EVM executes instructions through Solidity which compiles into EVM bytecode to reach the final result
4-Bitcoin Script is not turing complete meaning it is limited and cannot solve all problems.
5-Turing complete programs allow for loops and can solve any problem.

1 Like
  1. The EVM connects CPUs on the Ethereum blockchain. The EVM runs smart contracts using the GPU similar to the way a computer runs a program. Because the EVM is connected over a network of CPUs nodes can come to consensus that a smart contract has either had its terms met or not and executing the terms of the contract.

  2. EVM can read instructions in Bytecode which is converted from the Soilidity code or Vyper code in which the smart contract is written in.

  3. Smart contracts are written in Solidity and converted in to Bytecode which is what the EVM can read to execute smart contracts.

  4. Bitcoin is unable to run the same kinds of complex programs like Ethereum because it uses Script which is non turing complete. It was created this way to give the network security by avoiding spam attacks on the network.

  5. A turing complete programming language is able to use loops. Loops can be programed to run the same line of code multiple times without the need to physically code each individual line of code.

1 Like

Homework on EVM

  1. It reads the code and tells the CPU what actions to execute.

  2. EVM can read script which is converted form language called Solidity. Perhaps in the future from Viper as well.

  3. Bytecode is a code that EVM reads. Solidity is one of possible languages that can be transformed into bytecode.It does not matter what type of language is used as long as it is properly transcripted into bytecode.

  4. Bitcoin runs on simpler language called Script, which is not turing complete, meaning it can do a very limited set of actions compared to turing complete languages.

  5. Turing complete language can do basically ā€œanythingā€ it had been programmed to.

1 Like
  1. EVM takes information and reprograms it so all existing nodes in the network can run and share these contracts.
  2. EVM reads the byte codes.
  3. Solidarity is the Ethereum script that creates the byte codes for all nodes on the platform.
  4. Bitcoin can’t run the same programming language because it’s not touring complete.
  5. Touring complete programming language is language that can program anything and is not limited.
1 Like
  1. EVM stand for Ethreum Virtual Machine and is a piece of code that makes a nodes capable of reading and executing smart contract on the Ethereum network.

  2. The EVM can only read in byte code.

3.The smart contract is written in solidity that will be transcript into byte code and will be read by the EVM.

  1. No Bitcoin is incapable of running such code as it is a Not Turing complete language.

  2. Turing complete language is a programming language that is complete and is capable of in theory of anything that is has been program for.

1 Like