1
A
回答
2
所有的uintN
,varuintN
和varintN
都是WebAssembly的binary format獨有的概念。它們純粹是以緊湊的機器可讀格式對WebAssembly進行編碼。
i32
和朋友是language types。 semantics of WebAssembly有更好的描述這些類型以及它們如何相互作用。基本上,它們存在於語言級別,並形成WebAssembly程序中可用的基本數據類型。
他們在兩個完全不同的層次。這有點像C int
與用於C源代碼的ASCII編碼。一種純粹在語言層面,另一種純粹用於以穩定格式表示該語言(對於C:源.c
文件;對於WebAssembly:二進制.wasm
文件)。
「類型構造函數」只是對應於二進制格式中特定二進制值的類型:您需要一些二進制值,您可以使用它們對每種類型進行編碼。回到我的C源代碼示例,源字符大寫字母B將以ASCII碼編碼爲0x42
。那麼這裏WebAssembly i32
類型被編碼爲字節0x7f
。
相關問題
- 1. node.js Buffer和WebAssembly Memory有什麼區別?
- 2. Int32和UInt32有什麼區別?
- 3. sqlalchemy的數據類型中的Varchar和String有什麼區別?
- 4. Cassandra數據類型中的INT和VARINT有什麼區別?
- 5. MySQL中BLOB和TEXT數據類型有什麼區別?
- 6. `pandas.read_csv`中`str`和`object`數據類型有什麼區別?
- 7. postgresql中decimal和numeric數據類型有什麼區別
- 8. 基元類和基元數據類型有什麼區別?
- 9. C++中的Uint32和unsigned int有什麼區別?
- 10. MySQL BOOL和BOOLEAN列數據類型有什麼區別?
- 11. 泛型類型和泛型類型定義有什麼區別?
- 12. 「流類型」套接字和「數據報」套接字類型有什麼區別?
- 13. 數據設計和數據模型(ERD)有什麼區別
- 14. MVC模型,數據和數據庫有什麼區別?
- 15. 什麼是Visual Basic .NET中的UInt32數據類型?
- 16. cl_datatype和通常數據類型之間的區別是什麼
- 17. 數據模型和對象模型有什麼區別?
- 18. 有界通配符和類型參數有什麼區別?
- 19. ASN.1枚舉類型和選擇類型有什麼區別?
- 20. 潛類型和Manifest類型有什麼區別?
- 21. 類型定義和類型引用有什麼區別?
- 22. 添加時,對i32的不可變和可變引用有什麼區別?
- 23. 文檔類型有什麼區別
- 24. HostingEnvironment類和HttpRuntime類有什麼區別?
- 25. java.awt.Rectangle類和java.awt.geom.Rectangle2D.Double類有什麼區別?
- 26. 這些數據類型有什麼區別?
- 27. 這三個Oracle數據類型有什麼區別?
- 28. UML中的構造型和類繼承有什麼區別?
- 29. Git中的樹和提交類型有什麼區別?
- 30. pg_hba.conf中的「local」和「localhost」連接類型有什麼區別?
根據我的理解,如果我在wasm二進制文件中找到一個字節'0x7f',這意味着這個地方必須有某種整數值? – YHSPY
謝謝!我想我明白這一點。 :) – YHSPY
不,如果您發現'0x7f',這可能意味着很多事情,因爲WebAssembly格式是可變長度編碼。取決於上下文,「0x7f」可能意味着不同的事情。這與x86中的相同,每個字節可能意味着不同的事情,具體取決於正在解碼的指令。 –