以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

ITA:詳解Cairo指令-ODAILY

Author:

Time:1900/1/1 0:00:00

1.指令結構

CairoCPU原生支持的word是一個域元素,而這個域是特征值大于P>2^63。每個指令會占用1到2個word,如果指令后面跟著立即值(="12345678")則該指令占用2個word,并且值存在第二個word里。每個指令的第一個word由以下元素組成:

2.狀態轉換

狀態轉換函數代表了一個通用的狀態轉換單元,而一個計算通常會分解成多個連續執行的指令,因此我們需要:

a.確保指令的內容,以及指令執行前后的狀態的有效性

b.確保執行的指令是一個有效的指令

2.1轉換邏輯

如果指令執行前后的狀態是一致的,那么其狀態的更新一定是按照以下邏輯執行:

一位NFT收藏家錯誤地在OpenSea上以100 ETH購買了免費NFT:金色財經報道,一位NFT收藏家錯誤地在 OpenSea 市場上以驚人的 100 ETH(相當于 191,239 美元)購買了免費 NFT 。這一失誤引發了觀察人士的爭論。一些人認為這是虛假交易,而另一些人則認為這是胖手指造成的。[2023/4/10 13:53:52]

2.2指令校驗

如圖1所示,?個指令由以下元素組成:

Deribit上的ETH期貨合約未平倉合約金額創1個月新高:金色財經報道,據Glassnodes數據顯示,Deribit上的ETH期貨合約未平倉合約剛剛達到418,945,187 美元,創近1個月新高。[2023/1/25 11:29:01]

3.指令示例

3.1斷言相等

斷言相等指令可以用下述語法表示:

<left_handle_op>=<right_handle_op>

它確保了公式兩邊是相等的,否則程序的執行將會被返回。

Note2:除法和減法可以分別表示為具有不同操作數順序的乘法和加法。

assert指令可以被認為是一條賦值指令,其中?邊是已知的,另一邊是未知的。例如=4可以被認為是斷言的值為4,或者根據上下文將賦值為4。

圖4給出了斷言相等指令的一些示例,以及每個指令對應的標志值:

USDD實時抵押率超200%,抵押資產總價值遠高于USDD流通總價值:12月12日消息,USDD官方推特發文透露USDD當前抵押率超過200%,USDD官方推特表示,目前USDD儲備資產為14040.6枚BTC、109億枚TRX和3.92億枚USDC,以當前價計共14.55億美金,是USDD發行總額7.25億美金的2倍,USDD當前實時抵押率為200.77%。綜上,波聯儲的儲備資產是穩定的、充足的、健康的,USDD的幣值是穩定可靠的。持有者應對此有理性的認知。[2022/12/12 21:39:53]

解釋指令=5:

?為assert指令=>opcode=4

?next_ap=ap=>ap_update=00=0

?next_pc=pc+instruction_size=>pc_update=000=0

?op0和op1沒有addormul=>res_logic(res)=00=0

?存在立即數=>op1_src(op1)=001=1

GalaxyDigital在Q3收益報告中披露持有約7700萬美元FTX敞口:金色財經報道,Galaxy Digital在其第三季度收益報告中表示,FTX的敞口為7680萬美元,其中4750萬美元目前“處于退出過程中”。此外,聯合總裁 Damien Vanderwilt 將于 1 月中旬卸任并在董事會任職。?該公司報告第三季度凈虧損6800萬美元,管理資產近20億美元,較上一季度增長17%。[2022/11/9 12:39:22]

?立即數地址指令地址相鄰=>off_op1=1

?等式左邊=>dst_reg(dst)=1

?等式左邊=>off_dst=1

?op0_reg/off_op0=>initalvalue(1/-1)//因為這個指令用不到這些flags,所以填充默認值

3.2條件和非條件跳轉

jmp指令允許更改程序計數器pc的值。

Cairo支持相對跳轉和絕對跳轉-分別用關鍵字rel和abs表示;jmp指令或許是有條件的,比如當某個內存單元的值不為0時,觸發jmp指令。

指令的語法如下所示:

#Unconditionaljumps.

富達數字資產部門擬在未來半年內再招聘100名員工:金色財經報道,投資巨頭Fidelity的獨立數字資產子公司Fidelity Digital Assets負責人Chris Tyrer在倫敦數字資產峰會的一個小組討論會上表示,投資巨頭的Fidelity Digital Assets部門計劃在未來六個月內再增加100名新員工,這將使員工人數達到 600 人左右。[2022/10/21 16:34:54]

jmpabs<adress>

jmprel<offset>

#Conditionaljumps.

jmprel<offset>if<op>!

圖5給出了jmp指令的一些示例,以及每個指令對應的標志值:

解釋指令jmprel+:

?為jmp指令=>opcode=0

?next_ap=ap=>ap_update=b00=0

?next_pc=pc+res=>pc_update=b010=2

?res=op0+op1=>res_logic(res)=b01=1

?op1:=>op1_src(op1)=b010=2

?op1:=>off_op1=-7

?op0:=>op0_src(op0)=0

?op0:=>off_op0=1

?dst_reg/off_dst=>initalvalue(1/-1)///因為這個指令用不到這些flags,所以填充默認值

3.3call和ret

call和ret指令允許實現函數堆棧。call指令更新程序計數器(pc)和幀指針(fp)寄存器。程序計數器的更新類似于jmp指令。之前fp的值被寫入,以允許ret指令將fp的值重置為調用之前的值;類似地,返回的pc(調用指令后面指令的地址)被寫到,以允許ret指令跳回并繼續執行調用指令后面的代碼的執行。由于寫入了兩個存儲單元,ap向前進了2,fp被設置為新的ap。

指令的語法如下:

callret<adress>

callrel<offset>

ret

圖6給出了call和ret指令的一些示例,以及每個指令對應的標志值:

解釋指令callabs:

?為call指令=>opcode=0

?next_ap=ap=>ap_update=b00=0

?next_pc=res=>pc_update=b001=1

?res=op1=>res_logic(res)=b00=0

?op1:=>op1_src(op1)=b010=2

?op1:=>off_op1=4

?op0_reg/off_op0=>initalvalue(0/1)///因為這個指令用不到這些flags,所以填充默認值

?dst_reg/off_dst=>initalvalue(0/0)///因為這個指令用不到這些flags,所以填充默認值

3.4高級ap

指令ap+=<op>通過給定的操作數增加ap的值。

圖7給出了高級ap指令的一些示,以及每個指令對應的標志:

解釋指令ap+=123:

?為advancingap指令=>opcode=0

?next_ap=ap+res=>ap_update=b01=1

?next_pc=pc+instruction_size=>pc_update=b000=0

?res=op1=>res_logic(res)=b00=0

?op1=123=>op1_src(op1)=b001=1

?op1=123=>off_op1=1

?op0_reg/off_op0=>initalvalue(1/-1)///因為這個指令用不到這些flags,所以填充默認值

?dst_reg/off_dst=>initalvalue(1/-1)///因為這個指令用不到這些flags,所以填充默認值

關于我們

Sin7y成立于2021年,由頂尖的區塊鏈開發者組成。我們既是項目孵化器也是區塊鏈技術研究團隊,探索EVM、Layer2、跨鏈、隱私計算、自主支付解決方案等最重要和最前沿的技術。

微信公眾號:Sin7Y

GitHub|Twitter|Telegram|Medium|Mirror|HackMD|HackerNoon

Tags:RESOFFUSDITAPayexpressOffline泰達幣官網回收USDT嗎SAITAMURAI價格

POL幣最新價格
USD:SUN.io新2pool LP礦池當前APY超35%-ODAILY

據官方消息,SUN.io正在持續調整新2pool(USDD/USDT)LP礦池APY以跟進官方支持傾斜,當前APY高達35.98%.

1900/1/1 0:00:00
RAM:TinyRam指令集和電路約束-ODAILY

簡介 Tinyram是一個簡單的RISC隨機存取機器,具有字節尋址的random-accessmemory和inputtapes.

1900/1/1 0:00:00
SIS:JZL Capital:Oasis Network隱私之上的先驅者-ODAILY

一、隱私市場分析:為什么Web3.0需要隱私功能?1.區塊鏈最大的特點之一是匿名性,但匿名性不代表隱私性,用戶的交易數據、操作過程都是完全公開透明的,有心者可以通過跟蹤交易記錄判斷賬戶所屬.

1900/1/1 0:00:00
tron:加密碳評級研究所認定波場TRON為最環保的區塊鏈之一-ODAILY

據最新消息,波場TRON被加密碳評級研究所認定為“最環保的區塊鏈之一”。與此同時,CCRI還發布了《波場TRON能源效率和碳足跡報告》,報告顯示,波場TRON的能耗比比特幣和以太坊低99.9%.

1900/1/1 0:00:00
WEB3:黑客松新變化,波卡生態會迎來怎樣的新助力?-ODAILY

Polkadot生態研究院出品,必屬精品 背景 或許我們很難想象隨著元宇宙、區塊鏈和Web3的火熱,越來越多的投資機構和創業者開始加入到了這場浪潮中.

1900/1/1 0:00:00
NFT:投資者如何多元化你的加密投資組合?-ODAILY

數字不會說謊。加密市場從2013年的17億增加到今天的1.02萬億,經歷了巨幅的成長,這在任何其他資產類別中所無法想像的。這些年來,越來越多的人一直在尋找最熱門、最新的資產類別.

1900/1/1 0:00:00
ads