- ethereum virtual machine, is a piece of code that runs on top of existing hardware of each node. It directly reads and execute smart contracts, while safeguarding security
- bytes
- Solidity is the programming language which compiles programming code and translates it into byte code
- It is not turing complete meaning it cannot solve all problems
- It allows you to solve any problem, and with loops you can ask the programme do one thing multiple times
- The EVM acts as a barrier between a smart contract and the CPU. It protects your CPU and the ETH network from being compromised. It also reads/converts the Bytecode in a smart contract and communicates with the CPU to follow the instructions listed in the smart contract.
- Bytecode
- A smart contract is first written in Solidity and then a compiler is used to convert that language into Bytecode. This allows the Smart contract to be read by the EVM, EVM can not read Solidity. Simplified Bytecode is the translator from Solidity to EVM.
- It is not Turing complete.
- A language that has the ability to solve any/complex problems (although it does have scalability and cost issues).
1. What does the EVM do?
-Its a network that runs on top of the nodes and CPU that reads the code of 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 an easier code wich you can compile too Bytecode.
4. Why canāt Bitcoin run the same type of complex programs like Ethereum can?
-Because Bitcoin is limited,and not turing complete.
5. What is a Turing Complete programming language?
-That you can program anything you can think off.
1. What does the EVM do?
Indeed sir, but could you please explain a little about what the EVM do? what is his main function?
If you have any doubt, please let us know so we can help you!
Carlos Z.
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.
If you have any doubt, please let us know so we can help you!
Carlos Z.
5.What is a Turing Complete programming language?
Quite right sir, 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 doubt, please let us know so we can help you!
Carlos Z.
Excellent answer sir! really well documented! keep it like that please!
Carlos Z.
2.What is the format of the instructions that the EVM can read?
Quite close sir, probably you mean ByteCode.
If you have any doubt, please let us know so we can help you!
Carlos Z.
- EVM reads and executes smart contracts.
2.EVM can read instructions in byte code.
-
Programers will use solidity to read the instructions which are in byte code.
-
Because the program language used by bitcoin is not turning complete, it means that it can only solve very simple problems.
-
You can program everythinh you want in a turning complete programming language.
Thanks for the comment Carlos, my understanding of Turning complete is any language is general purpose - has loops, if elses, variables, set and arithmetic operations etc. to allow algorithmic programming.
1.EVM runs smart contracts on the Eth network. It also adds a layer of security by stopping anything malicious from happening to the network.
2. It reads byte code.
3. Solidity uses a compiler to translate Solidity into byte code then EVM tells the nodeās CPU what to run.
4. Because Bitcoinās language (Script) is not turing complete.
5. A turing complete language allows you to virtually program anything. Loops help this be possible.
- What does the EVM do?
- The Ethereum Virtual Machine is analogous to the JVM in the Java world.
- Executes instructions compiled from solidity or vyper.
- Runs on every Ethereum node
- Has gas costs associated with each instruction type based on computationally expensive those instructions are.
- It also acts as a security layer, limiting what the programmer can do on each nodeās CPU.
- What is the format of the instructions that the EVM can read?
- Bytecode, similar to Java bytecode or assembly language. Small operations like ADD, SUBTRACT, etc, that larger computational tasks are are built from.
- What is the relationship between the programming language Solidity and Bytecode?
- The compiler translates a more human readable language like solidity into bytecode that is more precise for the computer but harder for the human to read.
- Why canāt Bitcoin run the same type of complex programs like Ethereum can?
- Bitcoin Script is not Turing Complete.
- Bitcoin has become the standard for digital gold, and making it able to run Turing Complete programs introduces the possibility of spam, and also clogging up the limited sized blocks with smart contract state. That would be potentially bad for its current use case, and there is too much contention over changes to the protocol to introduce such a change.
- What is a Turing Complete programming language?
- A language that is capable of expressing any computation that can theoretically be done with a computer. One of the key components is the idea of a loop or recursion. Some languages are not expressive enough to do all forms of computation, but solidity is.
- What does the EVM do?
- It takes the instructions of a smart contract and executes them with the hardware on the network.
- What is the format of the instructions that the EVM can read?
- Bytecode.
- What is the relationship between the programming language Solidity and Bytecode?
- A smart contract that is written on Solidity, is run through a compiler application to convert instructions to Bytecode.
- Why canāt Bitcoin run the same type of complex programs like Ethereum can?
- Bitcoin programming language is not turing complete. This is on purpose, so the Bitcoin network would not get spammed. The purpose of Bitcoin is digital money. It allows only basic programming options like multisignature wallets.
- What is a Turing Complete programming language?
- A language through which you can solve any problem, program anything. That is in theory. In reality you have limitations in scale, in network capability.
- EVM is program that runs on all ethereum nodes and checks validity of smart contracts. It is middle structure between smart contracts and CPU, it reads smart contracts and command CPU to do instructions.
- EVM can read bytecode.
- Solidity is source code of Ethereum and it is programming language which can program smart contracts. Bytecode is low level code that can be executed on EVM, and it is compiled from solidity.
- Because code is written on basic programming language script which isn“t turing complete and it can only perform simple instructions.
- It is programming language that can perform all instruction and code that anyone can think of in theory.
Excellent answer sir! really well documented! keep it like that please!
Carlos Z.
What does the EVM do?
The EVM reads and executes smart contracts without allowing the smart contract access to the CPU of individual nodes
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?
The smart contract itself is written in solidity and then it is compiled into bytecode to be executed by the EVM
Why canāt Bitcoin run the same type of complex programs like Ethereum can?
Because BTC is not Turing complete
What is a Turing Complete programming language?
This is a programming language that allows loops
- 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?
-
The EVM basically acts as the middle man between the blockchain and the computers. The EVM reads and verifies the state of contracts and transactions and relays them to the CPU of each node to ensure that the contract is acted on correctly.
-
The format of the instructions that the EVM can read is Bytecode.
-
Solidity is the coding language that humans use to develop contracts, etc and then the completed contract is compiled into Bytecode for the EVM to be able to read.
-
Bitcoin uses Script which is not Turing Complete and is not scalable in the same way that Solidity is.
-
A Turing Complete programming language is a language that is theoretically able to express all tasks that could be achieved by computers. So, essentially, a Turing Complete language can theoretically provide an answer to any problem that can be solved with logic (assuming the limitations of finite memory are ignored).
The Ethereum Virtual Machine runs on top of each node, using the CPU. Smart contracts are directly executed by the EVM and indirectly using the CPU. EVM also ensures that smart contracts do not brake loose and do not impact the machine.
- EVM can read smart contracts and can give instructions to the cpu to execute them
- cpu
- solidity uses compiler to make byte codes and than EVM can read this byte codes
- because it would slow down transaction times.
- a turing complete program works with Loops. the program is not limited and can solve any problem