堆栈中的单词是256位,因此在十六进制表示中有32个字节.白花黄纸声明“堆栈的大小为1024”,尽管它没有说什么(位/字)。一个聪明的契约分析工具,states,声明栈中不可能有超过32个元素,所以我假设在EVM的执行堆栈中有多少个256位的字是32。是这样的吗?还有,谁能告诉我关于记忆的事?MLOAD和MSTORE操作码只从堆栈中提取一个元素来指示内存位置。那么内存只能扩展到2^256项吗?
发布于 2019-08-30 04:23:30
我不太清楚拉特尔指的是什么。你有没有链接或参考他们的确切措辞?如果他们准确地说了“堆栈中的32个元素”,那么这是不正确的。堆栈的最大大小为1024个条目,其中每个条目为32个字节。
是的,内存的最大边是2^256个条目,其中每个条目都是一个字节,这比您需要的内存要多得多。
https://ethereum.stackexchange.com/questions/74390
复制相似问题