Homework on EVM

  1. What does the EVM do?

EVMs isolate smart contracts, read Bytecode generated from compiling smart contracts and execute the instructions received from smart contracts before sending the results to the cpu. These steps are taken to ensure there is no malicious code that will interact with your computer and further compromise your computer.

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

EVMs read instructions in Bytecode which is generated after compiling a smart contract.

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

The relationship between Solidity and Bytecode is that smart contracts are made using the programing language Solidity which is then compiled into Bytecode for the EVMs to read.

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

Bitcoin can’t run the same complex programs like Ethereum because it is not Turing complete.

  1. What is a Turing Complete programming language?

A Turing complete language is a more complex language allowing you to do loops.

1 Like
  1. The Evm reads instructions compiled from solidity into bytes codes and executes them on the ethereum blockchain node
  2. Byte codes
  3. Instructions in the smart contract are written in solidity and sometimes viper, either ways all must be compiled into bytecode for the evm to read and execute on the node.
  4. Because the bitcoin script is not turing complete.
  5. A turing complete language is one that can solve every problem available to it.
1 Like
  1. EVM allows us to execute the code in forms of smart contract on the ethrium network, such that the code follows the consensus on what the result should be.
  2. EVM reads instructions sequentially in solidity
  3. Since EVM runs on top of CPU, therefore we use Solidity to write codes on a high level that we can understands, then solidity will translate the code into Bytecode, in which it is read and executed by EVM
  4. As of July 2022, smart contract on Bitcoin isn’t as good as what smart contract on Ethereum offers. Therefore it enables Ethereum to run more complex code then Bitcoin
  5. Most modern programming language such as JavaScript and Solidity are Turing Complete programming language. A Turing Complete programming language can perform most if not all tasks the programmer can conceive.
1 Like
  1. EVM can read and execute smart contracts.

2.EVMs can read languages made using Solidity and Viper

  1. The programming of smart contracts

  2. Because bitcoins language , Script, is not turing complete.

5.It means you can program anything you want

1 Like
  1. What does the EVM do? The Ethereum Virtual Machine is a piece of code that executes the smart contracts bytecode and is in every single Ethereum Node. It also allows projects to build decentralized applications but is limited to scalability.
  2. What is the format of the instructions that the EVM can read? The EVM will read the smart contract then tell the CPU what to do in EVM byte code.
  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity compiles in bytecode that is then executed in the EVM
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because Bitcoin is ran off a Non Turing Complete programming language called Script while Ethereum is ran off a a Turing Complete(TC) called Solidity
  5. What is a Turing Complete programming language? A Turing Complete programming language is a program where a developer can loop and compute anything and basically solve any problem universal.
1 Like
  1. What does the EVM do?
    EVM reads and executes smart contracts and separates the node’s CPUs from the SCs for extra security.

  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?
    Smart contracts are written using Solidity which then translates and compiles that program into byte code for the EVM to read and execute.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin’s programming language is a Non Turing Complete language called Script. It works well functioning as a currency transactor but is limited in its ability to program other functions. Ethereum’s programming language is called Solidity which is a Turing Complete language and allows for anything to be programmed, in theory.

  5. What is a Turing Complete programming language?
    Turing Complete programming is a language that uses loops to be able to program any function the programmer desires in theory.

1 Like
  1. What does the EVM do?

Answer: Ethereum Virtual Machine is running on top of the hardware of each existing node in Ethereum network. It reads smart contracts and in turn tells CPU what to do.

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

Answer: even though smart contracts are typically written in Solidity programming language, EVM can’t directly read them. With the help of special applications called compilers, Solidity is compiled into code bytes that can be read by the EVM.

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

Answer: in order for the EVM to read the smart contract, Solidity language has to be compiled into small code bytes with the help of compilers - special applications.

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

Answer: Bitcoin is written in a different programming language called Script. Script is not Turing Complete, meaning it doesn’t have the ability to solve the most complex mathematical problems, it is limited.

  1. What is a Turing Complete programming language?

Answer: a Turing Complete programming language means that given enough time and memory along with the necessary instructions, it can solve any computational problem, no matter how complex.

1 Like
  1. EVM executes the SmartContract instructions
  2. byteCode format
  3. Solidity is the programming language. Once the program is written, it then gets compiled into byteCode. This byteCode can run on the EVM.
  4. It is not Turin Complete
  5. Its a programming language that can NOT solve all the problems it has to solve. It is very limited in what it can do.
1 Like
  1. EVM stands for Ethereum Virtual Machine. An EVM reads the instruction on a smart contract and tells the CPU of a node to execute those instructions.

  2. The EVM reads the bytecode that Smart contracts, written in Solidity, have been compiled into.

  3. Solidity is the programming language used for Smart contracts on the Ethereum network. The Solidity Compiler compiles them into bytecode. The EVM reads that bytecode.

  4. Bitcoin uses the language of Script. Script is not a Turing Complete language. Ethereum uses the language of Solidity. Solidity is a Turing Complete language. Solidity allows Ethereum to run complex programs that have loops.

  5. A Turing Complete Language is one that can mathematically do anything you can think of. It is a language that can perform any computation.

1 Like
  1. EVM makes it possible to execute code on the Ethereum network in order to achieve consensus. It acts as an intermediary between smart contracts and CPU.

  2. EVM reads instructions from Bytecode.

  3. Solidity needs to be interpreted by a compiler. Bytecode gets information from the compiler.

  4. Bitcoin is not Turing Complete so it can only execute simple programs.

  5. A Turing Complete programming language enables more complex instructions to be carried out, such a loops where a software can be instructed to do something several times over.

1 Like
  1. EVM store and execute smart contracts on Ethereum blockchain. And one of the reason to use it, is security: prevent smart contracts to being executed on the node’s or miner’s hardware directly.
  2. Bytecode
  3. Solidity is compiled into Bytecode.
  4. Its programming language is not capable at a complex level
  5. In a Turing complete programming language, it is possible to write any conceivable program in theory.
1 Like
  1. Ethereum Virtual Machine is a piece of code that runs on the Ethereum blockchain. It lets all the network participants run smart contracts and transaction requests.
  2. Smart contracts.
  3. Solidity turns written codes to Bytecode, so EVM can understand them.
  4. Btc’s programming language is Script and it’s not turing complete. On the other hand, solidity is a turing complete language and that means you can give live any idea o yours give life with it.
  5. Solidity, JS.
1 Like

Homework on EVM - Questions (Updated on Dec 3 2019)

  1. What does the EVM do?
    A: They read the transaction requirements and create an encapsulated security layer between the smart contract and the CPU.
  2. What is the format of the instructions that the EVM can read?
    A: Bytecode
  3. What is the relationship between the programming language Solidity and Bytecode?
    A: Solidity is where the the code is written, programmed and structured before it converts the code to Bytecode for the EVM then to be able to read the smart contract.
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    A: Because the programming language, Script is not designed to be fully programmable and is a non turning complete language.
  5. What is a Turing Complete programming language?
    A: A programming language that can be programmed to include any actions and objective within smart contracts.
2 Likes
  1. EVM or Ethereum Virtual Machine is a piece of code used on the Ethereum blockchain as sort of a security measure, between smarts contract and CPU, that helps interpret and execute smart contracts.
    2 The format of the instructions the EVM can read is in Bytecode.
  2. The relationship between the programming language Solidity and Bytecode is that Solidity is used to write the code that is going to be used and converts it to Bytecode for the EVM to read and execute.
  3. Bitcoin can not run the same type of complex programs like Ethereum because the programming language used, Script, is not a fully programmable language and is considered a non turing complete language.
  4. A Turing Complete programming language is a programming language that can be used to include any action and objective in smart contracts.
1 Like
  1. The EVM is the intermediary that runs smart contract code on the ethereum nodes.
  2. The EVM reads solidity code that has been compiled into byte code.
  3. Solidity is the human readable language used to author smart contracts. Byte code is the computer readable and executable version of those computer instructions.
  4. Bitcoin can not run the same type of complex programs like ethereum because it does not have an ethereum virtual machine equivalent and the scripting language that bitcoin support is not Turing complete.
  5. A Turing complete language that is comprehensive enough that you can use for general purpose programming and are not limited in the type of applications that can be written.
1 Like
  1. It runs on top of all network nodes and reads, then executes smart contracts using the CPUs of the underlying network nodes, on top of which it runs.
  2. Bytecode
  3. Solidity instructions are turned into bytecode using a compiler
  4. Its language (Script) is not turing-complete - limited in its capabilities
  5. A language with all standard programming features capable of executing any mathematical instructions
1 Like

Homework on EVM:

  1. An EVM (Ethereum Virtual Machine) executes the code for smart contracts, which allows the smart contracts to function on the network.

  2. Byte code is the format that an EVM can read.

  3. The programming language Solidity is used by programmers to access smart contracts.

  4. Bitcoin can’t run the same complex programs as Ethereum. This is since Bitcoin’s programming language is not turing complete. Meaning, the language can’t solve all available issues.

  5. A turing complete programming language is able to solve every issue ever thought of.

1 Like
  1. EVM is a virtual component that is contained in every Ethereum node and is able to execute bytecode for contracts.

  2. Smart contracts are usually written in high-level languages like Solidity and are then converted into EVM bytecode by the compiler.

  3. EVM bytecode is a low-level programming language which is compiled from a high-level programming language such as solidity.

  4. Bitcoin programming language (Script) is not Turing Complete.

  5. A Turing Complete language can solve any computation problem.

1 Like
  1. What does the EVM do?
    Ethereum Vitual Machine. It executes the smart contracts to reach total consensus in the entire network.

  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?
    Compiled solidity to Byte code then EVM reads the instructions.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Script is Not Turing Complete.

  5. What is a Turing Complete programming language?
    Turing Complete programming language means full flexibility.

1 Like
  1. What does the EVM do?
    The EVM includes the Ethereum network in the Blockchain system consisting of nodes(CPU) by adding smart contracts.

  2. What is the format of the instructions that the EVM can read?
    The EVM can read only bytecode which originates from the solidity programming language(in etherium)

  3. What is the relationship between the programming language Solidity and Bytecode?
    Solidity is transcripted into Bytecode in order for EVM to be able to run the code.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because it runs on “script” which is programmed in such a way that is not TC.

  5. What is a Turing Complete programming language?
    A Turing Complete programming language is a language that you can use to code whatever you want(in theory) having scalability in mind.

1 Like