Evm

不同的客戶使用不同數量的氣體嗎?

  • November 18, 2020

我正在嘗試了解客戶端/節點,有人可以幫助我澄清以下內容。

我的理解是每個客戶端都以自己的方式實現 EVM。

智能合約是用 Solidity 編寫的,然後編譯(正確的術語?)成字節碼。在客戶端實現的 EVM 中,字節碼被解釋為操作碼,每個操作碼都有一個固定的氣體成本。

是否所有客戶端都將字節碼轉換為相同的操作碼?本質上,客戶之間的氣體效率有什麼區別嗎?

合約在部署到網路之前被編譯為操作碼。您不能直接將 Solidity 程式碼部署到網路。不同的客戶端只執行程式碼,他們不編譯它。

每個操作碼的 gas 成本在乙太坊黃皮書(見附錄 G)中定義,因此不同客戶端的 gas 成本是相同的(當然假設它們是合規的)。

引用自:https://ethereum.stackexchange.com/questions/90278