You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuweni.apache.org by Antoine Toulme <an...@toulme.name> on 2021/04/29 07:07:00 UTC

Ethereum Virtual Machine explainer

Hello folks,

Please see here a video I made explaining some of the concepts of the Ethereum Virtual Machine:
https://youtu.be/9fyaDQ55x_E <https://youtu.be/9fyaDQ55x_E>

I hope you enjoy it.

Please let me know if you have any feedback, anything to do differently, what else you’d like to see covered, etc.

Cheers,

Antoine

Re: Ethereum Virtual Machine explainer

Posted by Antoine Toulme <an...@toulme.name>.
Yes. Each byte is an operation. Some operations read and move the cursor.

In this case 0x7f says push32, as in push next 32 bytes as a stack item.

Followed by 0x01 to add, and then more ops.

When you execute tests, it shows the execution order.



> On Apr 30, 2021, at 06:54, nicolas melendez <nf...@gmail.com> wrote:
> 
> Hi great video, EVM is a bit more complex than the crawler for sure.
> 
> I didn't get about the ops code spec, the berlin hard fork is implemented,
> so for example add0 has it code:
> 
> "code" :
> "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0160005500"
> ,
> 
> That code would be a solidity smart contract compiled?


Re: Ethereum Virtual Machine explainer

Posted by Antoine Toulme <an...@toulme.name>.
Yes. Each byte is an operation. Some operations read and move the cursor.

In this case 0x7f says push32, as in push next 32 bytes as a stack item.

Followed by 0x01 to add, and then more ops.

When you execute tests, it shows the execution order.



> On Apr 30, 2021, at 06:54, nicolas melendez <nf...@gmail.com> wrote:
> 
> Hi great video, EVM is a bit more complex than the crawler for sure.
> 
> I didn't get about the ops code spec, the berlin hard fork is implemented,
> so for example add0 has it code:
> 
> "code" :
> "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0160005500"
> ,
> 
> That code would be a solidity smart contract compiled?


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tuweni.apache.org
For additional commands, e-mail: dev-help@tuweni.apache.org


Re: Ethereum Virtual Machine explainer

Posted by nicolas melendez <nf...@gmail.com>.
Hi great video, EVM is a bit more complex than the crawler for sure.

I didn't get about the ops code spec, the berlin hard fork is implemented,
so for example add0 has it code:

 "code" :
"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0160005500"
,

That code would be a solidity smart contract compiled?