【開發智能合約 — Solidity系列】實作篇Ep.4 -貨幣與時間單位

更新 發佈閱讀 4 分鐘
vocus|新世代的創作平台

「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。

💰 乙太幣單位

最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。

// 1 wei是貨幣中的最小單位
uint oneWei = 1 wei;

require(oneWei == 1, "1 wei is not equal to 1");

// 1 gwei is equal to 10^9 wei
uint oneGWei = 1 gwei;
require(oneGWei == 1e9, "1 gwei is not equal to 1e9");
require(oneGWei == pow(10, 9));

// 1 ether is equal to 10^18 wei
uint oneEther = 1 ether;
require(oneEther == 1e18, "1 ether is not equal to 1e18");
require(oneEther == pow(10, 18));
require(oneEther == 1000000000 * oneGWei, "1 ether is not equal to 1000000000 gwei");

🕑 時間單位

時間單位的部份就比較容易理解了, 非常直觀, 以「秒」為基礎單位進行延伸。

P.S: Solidity的時間表示方式是Unix Time

// 1秒
assert(1 seconds == 1);

// 1分鐘 = 60秒
assert(1 minutes == 60 seconds);

// 1小時 = 60分鐘
assert(1 hours == 60 minutes);

// 1天=24小時
assert(1 days == 24 hours);

// 1周 = 7天
assert(1 weeks == 7 days);

由於block(區塊)中通常帶有時間戳記, 而單位也是秒, 因此我們可以進行一些區塊的驗證如下:

function validate(uint start, uint secondsAfter) public {
// 區塊的時間戳記至少在3秒以前, 才算有效
if (block.timestamp >= start + secondsAfter * 3 seconds) {
// ...
}
}

結語

「單位」在區塊鏈的世界中真的非常重要,尤其與金流及驗證有關的演算都是需要進行單位轉換的演算,因此我們務必打好基礎,理解各個單位的用法、等價方式…,才能夠撰寫出一份完整的合約內容。

今天的範例都在這裡「📦 solidity-remix-toturial/Ep4」歡迎自行取用。

📚 更多關於Solidity的文章請看這裡…

留言
avatar-img
阿Han的沙龍
164會員
332內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
阿Han的沙龍的其他內容
2023/08/01
 相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
Thumbnail
2023/08/01
 相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
Thumbnail
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/05/31
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
2023/05/31
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
看更多
你可能也想看
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
上一篇我們介紹了智能合約的基本概念,而在開發智能合約之前, 建議先對智能合約具備基礎的概念, 往後進行開發時較容易融會貫通, 還沒閱讀的朋友可以參閱此篇「【開發智能合約 — Solidity系列】 淺談智能合約」。 理解完「智能合約」之後,相信大家已經開始手癢了吧! 應該很想開始動手完成第一個自己專
Thumbnail
上一篇我們介紹了智能合約的基本概念,而在開發智能合約之前, 建議先對智能合約具備基礎的概念, 往後進行開發時較容易融會貫通, 還沒閱讀的朋友可以參閱此篇「【開發智能合約 — Solidity系列】 淺談智能合約」。 理解完「智能合約」之後,相信大家已經開始手癢了吧! 應該很想開始動手完成第一個自己專
Thumbnail
實現Web3.0的核心技術,不論是加密貨幣、NFT、元宇宙,其最核心的部分為區塊鏈。 如果沒有區塊鏈的技術支持,你所看到任何號稱是加密貨幣、NFT的東西都是假的。 區塊鏈最早起源於自2008年中本聰的實驗項目《比特幣:一種點對點的電子現金系統》,直到現在該實驗項目依然持續進行中。
Thumbnail
實現Web3.0的核心技術,不論是加密貨幣、NFT、元宇宙,其最核心的部分為區塊鏈。 如果沒有區塊鏈的技術支持,你所看到任何號稱是加密貨幣、NFT的東西都是假的。 區塊鏈最早起源於自2008年中本聰的實驗項目《比特幣:一種點對點的電子現金系統》,直到現在該實驗項目依然持續進行中。
Thumbnail
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
Thumbnail
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
Thumbnail
前言 比特幣(Bitcoin)出現時,Coin就足以代表幣圈的幣,因為他就是一個支付貨幣,而隨著以太坊的出現,區塊鏈上引入智能合約,應用五花八門, 項目方可以在以太坊上發行基於以太坊ERC-20標準的代幣(Token),Token便出現了。 幣 (Coin) 交易由區塊鏈處理 大多可與法定貨幣兌換
Thumbnail
前言 比特幣(Bitcoin)出現時,Coin就足以代表幣圈的幣,因為他就是一個支付貨幣,而隨著以太坊的出現,區塊鏈上引入智能合約,應用五花八門, 項目方可以在以太坊上發行基於以太坊ERC-20標準的代幣(Token),Token便出現了。 幣 (Coin) 交易由區塊鏈處理 大多可與法定貨幣兌換
Thumbnail
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
Thumbnail
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
在本文中,我們會開始寫一些程式,讓讀者瞭解如何利用Remix開發環境來撰寫Solidity程式,以及如何編譯、發佈智能合約。還有在發佈之後怎麼看剛剛設定的參數是否都成功被執行了,一起實作發出人生第一顆發財幣吧!
Thumbnail
在本文中,我們會開始寫一些程式,讓讀者瞭解如何利用Remix開發環境來撰寫Solidity程式,以及如何編譯、發佈智能合約。還有在發佈之後怎麼看剛剛設定的參數是否都成功被執行了,一起實作發出人生第一顆發財幣吧!
Thumbnail
這一篇文章會深度解析在區塊鏈的世界中最常見的三種代幣協議 ,當中包含現在最紅的 NFT ,理解這些大家講好的規範,會讓我們在使用時更加瞭解它是怎麼運作的,這樣在使用一些去中心化的服務時,就可以自行去判斷它寫的內容是不是壞壞的,能讓自己避開危險在幣圈可是很重要的生存之道呢。
Thumbnail
這一篇文章會深度解析在區塊鏈的世界中最常見的三種代幣協議 ,當中包含現在最紅的 NFT ,理解這些大家講好的規範,會讓我們在使用時更加瞭解它是怎麼運作的,這樣在使用一些去中心化的服務時,就可以自行去判斷它寫的內容是不是壞壞的,能讓自己避開危險在幣圈可是很重要的生存之道呢。
Thumbnail
區塊鏈是多個技術整合的總稱,最早是採用區塊(Block)作爲儲存資料的單位,其中每個區塊有預設的容量限制,當該區塊滿了,則會生成下一個區塊,並將兩個區塊連結起來,讓他人知道兩個區塊有先後順序;區塊與區塊透過鏈連結在一起,因此叫區塊鏈。
Thumbnail
區塊鏈是多個技術整合的總稱,最早是採用區塊(Block)作爲儲存資料的單位,其中每個區塊有預設的容量限制,當該區塊滿了,則會生成下一個區塊,並將兩個區塊連結起來,讓他人知道兩個區塊有先後順序;區塊與區塊透過鏈連結在一起,因此叫區塊鏈。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News