内容简介:WebAssembly 相关工具
摘自: WebAssembly 中文网
原文地址: 开发者引导 - WebAssembly 中文网
欢迎加入 WebAssembly 交流QQ群:536971109
高级工具
WebAssembly 由很多 工具 来支持开发者构建处理源文件输出二进制文件。如果你是一个写编译器的人、想尝试低级代码或只想尝试使用原始的 WebAssembly 格式进行试验,这些工具适合你。
这里有两套不同的工具,编译器作者或者 WebAssembly 开发者可以使用这些工具输出二进制文件,比如说 Emscripten :
WABT: WebAssembly 二进制工具
这个工具可以将二进制的 WebAssembly 代码和人类可以阅读的文本格式代码相互转换。文本格式代码类似于 S-expression ,这种文本格式的代码可以方便 WebAssembly 的编译器输出并进行分析和调试。
注意,S-expression 格式是 WABT 来支持的,并不是 WebAssembly 本身。它是可以用来表示 WebAssembly 的很多文本格式的语言之一,所以,他被开发成一个便于 WABT 工具编解码的格式。开发者能够非常简单的为其他的文本格式构建解码器/编码器,可以轻松的表达 WebAssembly 的堆栈机器语义。
wasm2wast 工具
这个工具将 WebAssembly 二进制转换为 S-expressions。他是命令行工具,一个二进制文件作为输入,输出一个包含可以读文本的文件
开发者可以编辑文本文件,然后再将其转换为二进制文件,比如优化算法、追踪问题、插入调试语句等等。
wast2wasm 工具
这个命令行工具和 wasm2wast 是反的。也就是说,它将一个 S-expression WAST 文件转换为二进制的 WebAssembly 文件。
使用 wasm2wast 和 wast2wasm 可以掌控 WebAssembly 的二进制代码,开发者可以通过工具来操作修改 WebAssembly 的二进制代码。
wasm-interp 工具
这个工具是个可以让 WebAssembly 二进制代码在命令行中运行的翻译器。它实现了基于堆栈机的解释器,直接解释 WebAssembly 二进制文件。和浏览器将 WebAssembly 二进制通过JIT转换成目标机器的原生代码不一样的是,他不需要加载时间。
这个解释器对单元测试、检测二进制文件可用性等等很有用。是脱离浏览器的一个环境。
Binaryen
Binaryen 是一套全面的工具,用作将WebAssembly作为输出格式定位的编译器的后端。它具有 C API 和一套自己的逻辑程序的中间表示( IR ),并可以在 IR 上执行一些优化,支持代码合并等。
比如,binaryen 使用了 asm2wasm 作为编译器,将 asm.js 转换成 WebAssembly 文件。它还支持 LLVM 编译器的基础架构,可以将 Rust 转换成 WebAssembly。
通过 binaryen,可以进行编译、优化,它提供了一个壳,可以解释 WebAssembly代码,汇编和反汇编,可以将 asm.js 和 LLVM .s 文件转换成 WebAssembly 等等。
我们特别希望开发者能够探索由 binaryen 提供的所有功能。
可关注 WebAssembly 中文网微信公众平台,获取更多 WebAssembly 技术文章。
扫码关注w3ctech微信公众号
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- WebAssembly 相关工具
- 2019 网络爬虫和相关工具
- Java工具类——数学相关的类
- kfk: 一个快速查看 kafka 集群相关信息的工具
- NLP哪里跑: Unicode相关的一些小知识和工具
- Python自然语言处理工具NLTK学习导引及相关资料
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
计算机科学概论(第12版)
[美] J.Glenn Brookshear、[美] Dennis Brylow / 刘艺、吴英、毛倩倩 / 人民邮电出版社 / 2017-1 / 69.00
《计算机科学概论》是计算机科学概论课程的经典教材,全书对计算机科学做了百科全书式的精彩阐述,充分展现了计算机科学的历史背景、发展历程和新的技术趋势。《计算机科学概论》首先介绍的是信息编码及计算机体系结构的基本原理,进而讲述操作系统和组网及因特网,接着探讨算法、程序设计语言及软件工程,然后讨论数据抽象和数据库方面的问题,讲述图形学的一些主要应用以及人工智能,以计算理论的介绍结束全书。《计算机科学概论......一起来看看 《计算机科学概论(第12版)》 这本书的介绍吧!