1.指令結構
CairoCPU原生支持的word是一個域元素,而這個域是特征值大于P?>2^63。每個指令會占用1到2個word,如果指令后面跟著立即值(="12345678")則該指令占用2個word,并且值存在第二個word里。每個指令的第一個word由以下元素組成:
2.狀態轉換
狀態轉換函數代表了一個通用的狀態轉換單元,而一個計算通常會分解成多個連續執行的指令,因此我們需要:
a.?確保指令的內容,以及指令執行前后的狀態的有效性
b.確保執行的指令是一個有效的指令
2.1轉換邏輯
如果指令執行前后的狀態是一致的,那么其狀態的更新一定是按照以下邏輯執行:
0xScope:從11月7日至今,孫宇晨疑似已套現超11億美元:12月28日消息,0xScope監測數據顯示,從11月7日至今,孫宇晨疑似已套現6.26億枚USDC以及5.01億枚BUSD。套現的路徑多為將Tron上穩定幣轉入幣安,然后再提出至以太坊并轉入Paxos和Circle。[2022/12/28 22:12:24]
2.2指令校驗
如圖1所示,?個指令由以下元素組成:
3.指令示例
Web3域名聯盟宣布成立,創始成員包括Unstoppable Domains等:11月2日消息,Web3域名聯盟宣布成立,創始成員包括Unstoppable Domains、Tezos Domains,Polkadot Name System和Bonfida。該聯盟旨在打擊欺詐和命名沖突,并促進下一代Web3域名的技術進步和用戶體驗。(TheBlock)[2022/11/2 12:10:46]
3.1斷言相等
斷言相等指令可以用下述語法表示:
<left_handle_op>=<right_handle_op>
它確保了公式兩邊是相等的,否則程序的執行將會被返回。
Note2:除法和減法可以分別表示為具有不同操作數順序的乘法和加法。?
assert指令可以被認為是一條賦值指令,其中?邊是已知的,另一邊是未知的。例如=4可以被認為是斷言的??值為4,或者根據上下文將賦值為4。
圖4給出了斷言相等指令的一些示例,以及每個指令對應的標志值:
螞蟻集團副總裁蔣國飛:數字藏品內含新內容、新權益、新體驗:金色財經報道,6月30日,由中國文化產業協會主辦的中國數字文創行業高質量發展論壇舉辦。螞蟻集團副總裁蔣國飛指出,科技與文化正在加速融合,文化產業迎來新的發展機遇。在區塊鏈、AI等技術賦能下,給消費者帶來了很多的新嘗試新表達,元宇宙的構建也帶來了全新的交互體驗,進一步推動了文化產業的數字化。數字藏品內含了新內容、新權益、新體驗。科技賦能新內容,助力優秀傳統文化煥活與傳承。此外,通過藏品圖案定制實物絲巾,定制實物商品,拓展用戶權益,虛實結合新權益,鏈接數字文創和實體經濟。新業態發展,帶動文化產業生態繁榮,推動科技能力創新。螞蟻集團通過科技驅動新體驗,邁出元宇宙第一步,發展推出諸如3D互動體驗、AI人機交互體驗、AR互動體驗等。數字藏品剛剛開始,文化與科技的融合僅僅是第一步,未來的深度融合值得期待,會產生全新的發展動能。[2022/6/30 1:42:08]
解釋?指令=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?
支付公司SumUp以85億美元估值完成6.24億美元融資:6月23日消息,支付公司SumUp宣布以85億美元估值完成6.24億美元融資,本輪融資由Bain Capital Tech Opportunities領投,貝萊德、btov Partners、Centerbridge、Crestline、Fin Capital和Sentinel Dome Partners等參投。SumUp將自己定位為中小企業金融科技整合服務提供商,與該公司處于同一業務領域的Square現在已轉型為加密貨幣支付公司。
SumUp此前曾支持過BTC支付,但之后在其官網宣布不再接受BTC支付,主要原因是其客戶使用率較低。(techcrunch)[2022/6/23 1:27:11]
?存在立即數=>op1_src(op1)=001=1?
?立即數地址指令地址相鄰=>off_op1=1?
?等式左邊=>dst_reg(dst)=1?
?等式左邊=>off_dst=1?
?op0_reg/off_op0=>initalvalue(1/-1)//因為這個指令用不到這些flags,所以填充默認值
3.2條件和非條件跳轉?
jmp指令允許更改程序計數器pc的值。?
STEPN新realm或將于7月開放:6月21日消息,Move to Earn應用STEPN在社交媒體上公布圖片預告,或暗示新realm將于7月開放。[2022/6/21 4:43:04]
Cairo支持相對跳轉和絕對跳轉-分別用關鍵字rel和abs表示;jmp指令或許是有條件的,比如當某個內存單元的值不為0時,觸發jmp指令。
指令的語法如下所示:?
#Unconditionaljumps.?
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,所以填充默認值
參考
SpecificationforCairo:https://arxiv.org/pdf/2109.14534.pdf
關于我們
Sin7y成立于2021年,由頂尖的區塊鏈開發者和密碼學工程師組成。我們既是項目孵化器也是區塊鏈技術研究團隊,探索EVM、Layer2、跨鏈、隱私計算、自主支付解決方案等最重要和最前沿的技術。
微信公眾號:Sin7y
GitHub:Sin7y
Twitter:@Sin7y_Labs
Medium:Sin7y
Mirror:Sin7y
HackMD:Sin7y
HackerNoon:Sin7y
Email:contact@sin7y.org
來源:金色財經
A股昨天終于迎來像樣的反彈。要知道,這是最近10個交易日大盤第一次出現像樣的反彈,真是太不容易了。滬深兩市個股漲跌幅的中位數是漲2.23%,回血效應相當不錯的普漲行情,反彈略超預期.
1900/1/1 0:00:00午休刷微博時,偶然間刷到了《魔獸世界》懷舊服已于9月27日開放WLK的新聞,而一個巫妖王之怒的線上藝術展已經上線.
1900/1/1 0:00:00概述 近期,沃爾瑪在其iOS應用程序中推出了一項名為BeYourOwnModel的新AR功能,客戶可以上傳自己的照片,以模擬不同的衣服穿在自己身上的效果.
1900/1/1 0:00:00市場消息 Coinglass數據顯示,過去24小時,共有9.1萬人爆倉,爆倉總金額為3.25億美元.
1900/1/1 0:00:00牛人專業測評:Loboex真的是“全網最高勝率”的交易所嗎?作為合約的資深玩家,我們深入研究市場各個交易所的合約市場,其中一個叫號稱“全網最高勝率”的合約交易所——Loboex吸引了我們的注意.
1900/1/1 0:00:00萬眾矚目的以太坊合并,并未對加密資產行業產生預期的利好效果,反而受美元加息政策影響,加密資產行業再次陷入漫長的下行趨勢.
1900/1/1 0:00:00