1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > solidity智能合约[37]-以太坊虚拟机数据存储

solidity智能合约[37]-以太坊虚拟机数据存储

时间:2020-07-09 17:39:53

相关推荐

solidity智能合约[37]-以太坊虚拟机数据存储

EVM

当调用solidity函数时,都会在以太坊虚拟机当中来执行。因此了解以太坊虚拟机的细节,了解其数据的存储机制变得尤为重要。

以太坊虚拟机中的空间分为3大部分。分别为storage、stack与memory。 storage空间非常特殊,其值会被矿工提交到区块链上,改变区块链的状态。

下面我们将分析下面例子中,每一个变量所在以太坊evm中的位置。

下面的例子中,在运行合约中的代码时,变量a会存储在以太坊evm的storage空间中。其实所有的状态变量都会存储在storage空间中。

add函数中的函数参数num存储在memory空间中。

在函数中定义的变量,如在test函数中的i、j都存储在stack空间中。

当调用cahngeIt函数时,会修改storage空间中的a值。

当调用add函数时,会将memory空间中的num值加1.

当调用test方法时,会在stack中开辟空间i、j。i赋值为2. j赋值为add函数的返回值3.

总结

本文链接://11/22/solidity-37-evm-datastorage/

版权声明:本博客所有文章除特别声明外,均采用CC BY 4.0 CN协议许可协议。转载请注明出处!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。