当前位置: 首页 > news >正文

成都 网站建设培训班百度风云榜小说榜排名

成都 网站建设培训班,百度风云榜小说榜排名,政务门户网站建设方案,动画制作培训学院一、简述 WebAssembly,也称为Wasm,是基于堆栈的虚拟机的二进制指令格式。它被设计为一个可移植的目标,用于编译C、C和Rust等高级编程语言,允许代码以接近本机速度在web浏览器中运行。WebAssembly于2015年由包括谷歌、微软、Mozill…

一、简述

        WebAssembly,也称为Wasm,是基于堆栈的虚拟机的二进制指令格式。它被设计为一个可移植的目标,用于编译C、C++和Rust等高级编程语言,允许代码以接近本机速度在web浏览器中运行。WebAssembly于2015年由包括谷歌、微软、Mozilla和苹果在内的所有主要浏览器供应商首次宣布,作为web开发的新标准。

        对WebAssembly的需求源于JavaScript的局限性,JavaScript是用于web开发的传统语言。JavaScript最初是为表单验证和动画等简单任务而设计的,但随着web应用程序变得更加复杂,JavaScript的性能成为了一个瓶颈。很明显,需要一种更有效的解决方案来在浏览器中运行计算密集型应用程序。

        WebAssembly的创建是为了解决这个问题,它提供了一种在浏览器中运行用C、C++和Rust等语言编写的代码的方法。这些语言以其性能和低级控制而闻名,使其成为游戏、视频编辑和科学模拟等任务的理想选择。通过将这些语言编译为WebAssembly,开发人员可以在浏览器中运行代码的同时利用其性能优势。

二、主要用途

WebAssembly是一种低级编程语言,可以在现代 Web 浏览器中运行,并且可以与 JavaScript 一起使用。它的主要用途包括:

  1. 高性能的 Web 应用程序:WebAssembly 可以通过在浏览器中执行编译后的二进制代码,实现比 JavaScript 更高的性能。这使得开发者能够在 Web 上构建更加复杂和性能要求较高的应用程序,比如游戏、计算密集型应用程序等。

  2. 跨平台开发:WebAssembly 不仅可以在 Web 浏览器中运行,还可以在其他平台上运行,比如桌面应用程序、移动应用程序和服务器端应用程序等。这意味着开发者可以使用相同的代码库来构建跨平台的应用程序。

  3. 现有代码的重用:WebAssembly 可以与现有的编程语言相结合,比如 C、C++、Rust 等,使得开发者可以重用现有的代码库,并且可以在 Web 上运行这些代码库。

  4. 增强 Web 平台的功能:WebAssembly 可以为 Web 平台带来新的功能和能力,比如实现高性能的图像处理、音频处理、机器学习等应用。

WebAssembly代码可以从各种源语言生成,包括C、C++、Rust,甚至JavaScript。代码通常会提前编译为.wasm文件,然后可以在浏览器中加载和执行。WebAssembly模块也可以在运行时动态加载,从而在将代码交付给浏览器的方式上具有更大的灵活性。

总的来说,WebAssembly 的出现使得 Web 开发具备了更多的可能性和灵活性,使得开发者可以构建更加复杂和性能要求较高的应用程序,并且可以在不同的平台上实现代码的重用和跨平台开发。

三、编写hello world程序

首先,让我们获取emsdk,这是Emscripten的工具,用于获取编译器以及您需要的所有工具和东西。要做到这一点,很容易使用git从github获取:

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk

接下来,我们可以使用emsdk来获取Emscripten的最新稳定版本:
 

./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

打开一个文本编辑器,将hello world程序另存为hello.c:

// hello.c
#include <stdio.h>int main() {printf("hello, world!\n");return 0;
}

然后编译它

emcc hello.c -o hello.js

这会生成hello.js和hello.asm。wasm文件包含编译后的代码,而JS是加载和运行它的代码。默认情况下,Emscripten输出支持在Web和Node.JS上运行:

node hello.js

这将打印hello world。

我们还可以告诉emcc优化代码(这对代码大小非常重要),并生成HTML,例如:

emcc hello.c -O3 -o hello.html

然后,您可以运行一个本地Web服务器(如python-m SimpleHTTPServer 8000),然后浏览localhost:8000/hello.html,我们可以看到输出hello world。

http://www.15wanjia.com/news/10073.html

相关文章:

  • 小米商城网站设计论文关键词优化的软件
  • 权威的南通网站建设网络营销课程培训机构
  • 网站规划的原则是什么深圳关键词自动排名
  • 为政府做网站的公司网站seo优化技巧
  • wordpress安卓显示杭州seo网站排名
  • 网站开发公司交易流程天津网站快速排名提升
  • 从网站建设到网站运营sem优化技巧
  • bgp 网站东莞seo建站公司
  • wordpress搭建外贸网站做百度seo
  • 龙岗成立区企业服务中心优化的定义
  • 不学html直接学html5关键词优化多少钱
  • 丽水微信网站建设价格北京网站推广助理
  • 莱州市规划建设管理局网站如何免费推广自己的产品
  • 深圳 网站制作需要多少钱 网络服务baidu百度
  • xp做网站服务器吗实体店100个营销策略
  • 迅美网站建设图片外链在线生成网址
  • 信息网站建设的意义最好的bt磁力搜索引擎
  • 精品建设课程网站seo优化宣传
  • wordpress百度百科郑州seo顾问外包公司
  • 搜点济南网站建设小程序商城制作一个需要多少钱
  • yy刷单做的那些网站搜索引擎广告案例
  • 怎么看网站是否安装百度商桥代码怎样打开网站
  • 做那个的网站美国疫情最新消息
  • 怎么把几个网站做互通西安做网站
  • 二学一做专题网站百度代运营公司
  • dedecms采集规则各类网站媒体软文推广平台
  • 网站建设 大公司小公司十大嵌入式培训机构
  • 网站关键词怎么设置上海seo搜索优化
  • wordpress 在浏览站点时显示工具栏产品营销推广策略
  • 网站建设这一行业怎样贵州萝岗seo整站优化