以太坊虚拟机 (EVM (Ethereum Virtual Machine))
简而言之: EVM,即以太坊虚拟机,是以太坊的计算引擎,也就是智能合约运行的环境。每个节点都用相同的输入执行相同的代码,并且必须得出相同的结果。
EVM,即以太坊虚拟机,是以太坊的计算引擎,也就是智能合约运行的环境。每个节点都用相同的输入执行相同的代码,并且必须得出相同的结果。
为什么重要
开发者使用 Solidity 等语言编写合约,再将其编译成 EVM 字节码并部署到区块链上。EVM 执行的每一项操作都有相应的 Gas 成本,这既能防止无限循环,也让用户为自己请求的计算工作付费。由于 EVM 已成为事实上的标准,许多其他区块链(如 BNB Smart Chain 和 Avalanche C-Chain)都兼容 EVM:同样的合约、钱包和工具可以在这些链上通用,而且地址在各条链上的格式通常也相同。
示例
当用户在去中心化交易所兑换代币时,其钱包会发送一笔调用智能合约的交易。每个以太坊节点都会在 EVM 中逐步运行该合约的字节码,并更新代币余额。如果交易在完成前耗尽了 Gas,EVM 会撤销它所做的全部更改,但已经消耗的 Gas 仍需支付。