Homework on EVM

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

  1. What does the EVM do?
  • EVM reads and executes all of the instructions inside of the smart contract.
  1. What is the format of the instructions that the EVM can read?
  • EVM can only read in bytecode.
  1. What is the relationship between the programming language Solidity and Bytecode?
  • Solidity is a programming language that many programmers use to write the instructions in and then they use a compiler to compile it into bytecode.
  1. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  • Bitcoin uses script programming language which is not turing complete, and if the programming language is not turing complete it means that it can not run complex programs like those on Ethereum.
  1. What is a Turing Complete programming language?
  • It means that this language allows us to programm whatever we want with no limitations … (In theory)
1 Like
  • What does the EVM do?
    The EVM reads the smart contract and communicates the information to your CPU after the result is concluded all the nodes need to reach a consensus.
  • What is the format of the instructions that the EVM can read?
    The format is EVM Bytecode.
  • What is the relationship between the programming language Solidity and Bytecode?
    Solidity is the language where the contract is written in, and inside the solidity application you have a compiler that compiles everything in to Bytecode.
  • Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Because bitcoin is written in Script and that is not a Turing complete programming language.
  • What is a Turing Complete programming language?
    A Turing complete programming language allows you to program whatever you want without limitations.
2 Likes
  1. EVM executes smart contracts, which is running on the all notes.

  2. Virtual machines are essentially creating a level of abstraction between the executing code and the executing machine. This way to improve the portability of software, as well as to make sure applications are separated from each other, and separated from their host. EVM running in the sandbox environment which means it is isolated and has no direct link to a centralised CPU.

  3. When we compile the solidity code using the compiler, it will translate our code into bytecode, something only the EVM can understand.

  4. The deference between Ethereum and Bitcoin is that Bitcoin is only a currency, where Ethereum is a ledger technology that companies are using to build new programs. Bitcoin is version 1.0 and Ethereum is 2.0. Bitcoin use only script where Ethereum EVM smart contract can also use Loops.

  5. A Turing Complete system means a system in which a program can be written that will find an answer. Also that means in principle it could be used to solve any computation problem. Solidity is Turing complete language.

1 Like
  1. The EVM (Ethereum Virtual Machine) reads and executes the instructions of smart contracts.

  2. EVMs work with Bytecode, which decouples it from specific environments or even programming languages.

  3. The Bytecode which the EVM can read is produced by a compiler. The compiler takes a program written in Solidity and outputs the respective Bytecode.

  4. The Bitcoin scripting language is not Turing complete.

  5. A Turing Complete programming language is capable of solving any computable problem.

1 Like
  1. EVM - (Ethereum Virtual Machine) - runs and executes the code of a smart contract and delivers the result / answer to the Ethereum node computer which push out the result to other nodes to reach consensus.

  2. EVM reads byte code

  3. Solidity is the high level programmable computer language that (through a compiler) coverts the instructions into byte code.

  4. Bitcoin’s script programming language was purposely created to be limited to simple instructions so as not to overwhelm the network and keep BTC for its main purpose of Digital Gold / Payments.

  5. Turing complete programming language is a one that allows complex ideas and instructions (like loops) to be executed

1 Like
  1. EVM looks at all the instructions. It will tell the CPU of the computer what to do.
  2. Bytecode
  3. Solidity is like javascript which writes instructions. Then it is changed to bytecode
  4. Bitcoin is a not Turing Complete. They chose not to make the platform programmable.
  5. A TC programming lanuage gives great possibilities like loops which can bemade in unlimited ways.
1 Like
  1. It execute instruction and verify results
  2. Byte code
  3. Solidity is a second layer on top of Bytecode. When reading solidity the EVM translate it into Bytecode and read it in this language
  4. Because it’s not turing complete, its protocol doesn’t allow it and don’t have the EVM programming system but only shared script
  5. It’s a language that is programmable without limitation and allows for instance to create loops
1 Like

1. What does the EVM do?
EVM stands for Etherium Virtual Machine. It reads and executes smart contracts in Etherium nodes. Also, it acts as a buffer/additional security between the smart contract and CPU. Without EVM, the smart contract could access the CPU directly.

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 programming language (or viper) used to program. It then is converted to Bytecode.

4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
Bitcoin uses a programming language called script and it is not turing complete.

5. What is a Turing Complete programming language?
It is a programming language that has less limitations. For instance you can program loops, or give directions how to execute commands.

1 Like
  1. EVM: Ethereum virtual machine. It runs on the network of computers that make up the Ethereum blockchain. It reads and executes the smart contracts that are propagated through the network .

  2. It can read turning complete programs written on Solidity and other languages like Viper once translated into Bytecode mode.

  3. All instructions written on Script need to be compiled and translated into Bytecode. The EVM ultimately reads and executes what has been translated to Bytecode.

  4. Bitcoin is written in Script which is a simple and basic non turing complete program.

  5. A language that can perform complex mathematical operations. In other words, almost anything is theoretically programmable in a turing complete program.

1 Like
  1. What does the EVM do?
    EVM is an acronym for 'Ethereum Virtual Machine. … The Ethereum blockchain is widely regarded as being the first blockchain system that has a team dedicated to its development and maintaining its well-being. According to its website, Ethereum is a decentralized platform that primarily deals with running 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 exists for the EVM to execute instructions, a smart contract is in bytecode and therefore programmers are using Solidity to compile their messages into bytecode-language that the EVM understands and can execute commands from.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
    Bitcoin cannot run the same complex smart contracts in the way that Ethereum can, as it uses Script, which is non-Turing complete language.

  5. What is a Turing Complete programming language?
    A turing Complete language can do one thing several times (create loops)

1 Like
  1. The EVM can read and execute a smart contract.

2.Byte code.

3.Solidity complies the byte code.

  1. Bitcoin is not Turing complete and therefore cannot solve complex problems and is very limited.

  2. It can solve complex problems.

1 Like

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

  1. What does the EVM do?
  2. What is the format of the instructions that the EVM can read?
  3. What is the relationship between the programming language Solidity and Bytecode?
  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can?
  5. What is a Turing Complete programming language?

1- Read and execute the smart contracts then gives instructions to the CPU, ensures
that it’s imposible to execute code directly from the smart contract.
2- Bytecode
3- Solidity is the programming language we use to establish the smart contract, so we write a set of instructions that the compiler will change to bytecode format so the EVM can read it.
4- Because it uses an not complete turing programming language so it cannot do things like loops.
5- It’s a system of data-manipulation rules

Español

  1. Qué hace la EVM?
  2. Cuál es el formato que la EVM puede leer?
  3. Cuál es la relación entre el lenguaje de programación Solidity y Bytecode?
  4. Porqué BItcoin no puede correr el mismo tipo de complejidad en programas como lo hace Ethereum?
  5. Qué es un lenguaje de programación Turing Completo?

1- Lee y ejecuta los contratos inteligentes y entonces manda instrucciones al CPU,
asegura que sea imposible ejecutar código directamente desde el contrato sin
pasar antes por la EVM.
2- Bytecode.
3- Solidity es el lenguaje de programación que usamos para establecer los contratos
inteligentes, así que escribimos el conjunto de intrucciones para que después el
compilador las cambie de formato a bytecode entonces la EVM los pueda leer.
4- Porque bitcoin utliza un lenguaje de programación que que no es Turing
Completo por lo que no puede hacer iteraciones, necesarias para los contratos.
5- Es un sistema de reglas de manipulación de datos.

1 Like
  1. What does the EVM do?

EVM is virtual intermediary between smart contracts and physical hardware. It reads smart contracts and then instructs hardware to execute the contract code. It is needed to to keep malicious code in smart contracts from taking control of hardware and overcoming nodes or the Ethereum network as a whole.

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

The format of the instructions that EVM reads is byte code.

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

Solidity is the actual code language that is used to write smart contracts on the Ethereum network. Solidity contains a compiler that translates solidity code into byte code. Byte code is the code that is then entered into the smart contract and read by the EVM.

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

Bitcoin is written in script, which is not Turing Complete. It is limited in what it can actually execute.
Ethereum is written in solidity, which is a Turing Complete programming language. It gives Ethereum the capability to theoretically do anything with a smart contract.

  1. What is a Turing Complete programming language?

A Turing Complete programming language is a language that has no limitations to the problems it can solve. With a Turing Complete language you can write code to solve any problem.

1 Like

What does the EVM do?
It is a Ethereum Virtual Machine, where smart contract run (the EVM interprets and execute the smart constracts)

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?

The actual code language is solidity. That is used to write smart contracts on the Ethereum network. Solidity contains a compiler which translates solidity code into byte code. Byte code is read by the EVM when the code has entered into the smart contract.

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

Bitcoin uses a NTP, a Non Turing Programming language (it is written in script). It is therefore limited in what it can actually execute. Ethereum is instead written in solidity = Turing Complete programming language. With that Eth. is capable to theoretically do anything with a smart contract.

What is a Turing Complete programming language?

A TCP language is a language that can solve any problem (no limitations). With that it is possible to write code to solve any problem.

1 Like

thanks for the comment, most of the time after answet the questions i read some ansewers of other student… it was rapidly clear my answer wasnot correct

1 Like
  1. EVM read smart contracts in byte code.
  2. Byte code.
  3. Solidity is the programming language; the compiler of Solidity, compile the code in format of byte code.
  4. BTC is only a digital currency or digital gold. If in BTC there are SC, the space of blocks won’t be enough.
  5. TC is a programming language that can do any operations.
1 Like
  1. The Ethereum Virtual Machine runs using the power of a CPU to execute Dapp functions.
  2. Bytecode
  3. Solidity is a coding language that is converted to bytecode
  4. BTC’s script code is not turing complete. EVMs is turing complete and can execute complex functions.
  5. An almost boundless programming language.
1 Like
  1. What does the EVM do? Ethereum Virtual Machine is were the code runs.

  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? You write your smart contact in Solidity and then it gets compiled into byte code that the EVM runs the code.

  4. Why can’t Bitcoin run the same type of complex programs like Ethereum can? Bitcoin’s programming language (script) is not turing complete so you can not write complex programs with script.

  5. What is a Turing Complete programming language? A Turing complete programming language is flexible. You can write whatever program you want on it with little to no limitations.

1 Like
  1. EVM is a piece of code that all network computers run. It runs on top of the hardware of each node. It will read and execute smart contracts. EVM makes it possible to execute code on the network so that everyone is in consensus.

  2. The EVM will read Bytecode.

  3. A compiler will take the solidity code and compile it into Bytecode so the EVM can read the instructions.

  4. Bitcoin is not Turing complete.

  5. A Turing complete language will be able to program anything you want. It will include Loops which allow software to be programmed to do one task several times.

1 Like
  1. Ethereum virtual machine reads the smart contracts and executes them with the cpu
  2. Bytecode
  3. Solidity is the programming language that is compiled into a base level computer language called bytecode
  4. Because bitcoin is not turing complete
  5. Programming languages that allow loops
1 Like