asm.js使用示例代码


Posted in Javascript onNovember 28, 2013
function mymodule(global, foreign, buffer) {
    "use asm";
    // -------------------------------------------------------------------------
    // SECTION 1: imports
    var H32 = new global.Int32Array(buffer);
    var HU32 = new global.Uint32Array(buffer);
    var log = foreign.consoleDotLog;
    // -------------------------------------------------------------------------
    // SECTION 2: functions
    function f(x, y, z, w) {
        // SECTION A: parameter type declarations
        x = x|0;      // int parameter
        y = +y;       // double parameter
        // SECTION B: function body
        log(x|0);     // call into FFI -- must force the sign
        log(y);       // call into FFI -- already know it's a double
        x = (x+3)|0;  // signed addition
        // SECTION C: unconditional return
        return ((((x+1)|0)>>>0)/(x|0))>>>0; // compound expression
    }
    function g() {
        g_f = +g_i; // read/write globals
        return;
    }
    function g2() {
        return;
    }
    function h(i, x) {
        i = i|0;
        x = x|0;
        H32[(i&0xffffffff)>>4] = x; // masked by 2^k-1, shifted by byte count
        ftable_2[(x-2)&2]();        // dynamic call of functions in table 2
    }
    // -------------------------------------------------------------------------
    // SECTION 3: function tables
    var ftable_1 = [f];
    var ftable_2 = [g, g2]; // all of the same type
    // -------------------------------------------------------------------------
    // SECTION 4: globals
    var g_i = 0;   // int global
    var g_f = 0.0; // double global
    // -------------------------------------------------------------------------
    // SECTION 5: exports
    return { f_export: f, goop: g };
}
Javascript 相关文章推荐
超级酷和最实用的jQuery实例收集(20个)
Apr 21 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
Jun 23 Javascript
jQuery实现的网页换肤效果示例
Sep 20 Javascript
JS填写银行卡号每隔4位数字加一个空格
Dec 19 Javascript
jQuery延迟执行的实现方法
Dec 21 Javascript
Vue 2.0的数据依赖实现原理代码简析
Jul 10 Javascript
jQuery+koa2实现简单的Ajax请求的示例
Mar 06 jQuery
JS遍历DOM文档树的方法实例详解
Apr 03 Javascript
jQuery中实现text()的方法
Apr 04 jQuery
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
Oct 25 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
Mar 16 Javascript
微信小程序实现弹框效果
May 26 Javascript
jquery实现动态菜单的实例代码
Nov 28 #Javascript
JavaScript中的常见问题解决方法(乱码,IE缓存,代理)
Nov 28 #Javascript
原始XMLHttpRequest方法详情回顾
Nov 28 #Javascript
jQuery处理xml格式的返回数据(实例解析)
Nov 28 #Javascript
使用js写的一个简易的投票
Nov 27 #Javascript
juery框架写的弹窗效果适合新手
Nov 27 #Javascript
js使用数组判断提交数据是否存在相同数据
Nov 27 #Javascript
You might like
Terran兵种介绍
2020/03/14 星际争霸
PHP syntax error, unexpected $end 错误的一种原因及解决
2008/10/25 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
Javascript中定义方法的另类写法(批量定义js对象的方法)
2011/02/25 Javascript
使用jQuery实现的网页版的个人简历(可换肤)
2013/04/19 Javascript
多种方法实现360浏览器下禁止自动填写用户名密码
2014/06/16 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
jquery向上向下取整适合分页查询
2014/09/06 Javascript
node.js中的fs.rename方法使用说明
2014/12/16 Javascript
js点击选择文本的方法
2015/02/09 Javascript
Javascript中使用parseInt函数需要注意的问题
2015/04/02 Javascript
JS实现部分HTML固定页面顶部随屏滚动效果
2015/12/24 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
Vue项目webpack打包部署到服务器的实例详解
2017/07/17 Javascript
微信小程序实现图片滚动效果示例
2018/12/05 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
2019/10/23 jQuery
vant自定义二级菜单操作
2020/11/02 Javascript
原生js实现表格循环滚动
2020/11/24 Javascript
python中实现php的var_dump函数功能
2015/01/21 Python
Python使用修饰器进行异常日志记录操作示例
2019/03/19 Python
Python传递参数的多种方式(小结)
2019/09/18 Python
PyTorch使用cpu加载模型运算方式
2020/01/13 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
2020/02/18 Python
HTML5之SVG 2D入门7—SVG元素的重用与引用
2013/01/30 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
斯洛伐克最大的婴儿食品和用品网上商店:Feedo.sk
2020/12/21 全球购物
servlet面试题
2012/08/20 面试题
初中女生自我鉴定
2013/12/19 职场文书
高考备战决心书
2014/03/11 职场文书
园林设计专业毕业生求职信
2014/03/23 职场文书
和谐家庭演讲稿
2014/05/24 职场文书
安全员岗位职责范本
2015/04/11 职场文书
五年级作文之劳动作文
2019/11/12 职场文书
Python中Permission denied的解决方案
2021/04/02 Python