解决了个困扰了2天的问题,定点运算问题
分母变小了,相当于左移了
a=1-b/c;
|b|<pow(2,23)
|c|=pow(2,26)
|a|<1
在运算个过程中,需要把该运算转换成定点运算。
想了2天,都没有想出怎么可以保证a的精度,因为a可能很小,如果简单的
a<<=8;
是无法保证a的精度的。
今天快要下班时,突然有灵机一动:
c>>=6;
b<<=8;
a=1<<14-b/c; //相当于 a<<14,保证了a的精度
分子不能左移太多位,分母右移,解决问题了。
发散思维说起来很容易,做起来不容易呀!
以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
DSP中浮点转定点运算--浮点数的存储格式
二:浮点数的存储格式 2.1 IEEE floating point standard 上面我们说了,浮点数的小数点是不固定的,如果每个人都按照自己的爱好存储在电脑里,那不就乱套了吗?那么怎么在计算机中存储这种类型的数字呢?象这类古老的问题前人早都为我们做好了相应的规范,无规矩不成方圆吗.我们平时所说的浮点数的存储规范,就是由IEEE指定的,具体的规范文件是:IEEE Standard 754 for Binary Floating-Point Arithmetic.大家可以很容易的从网络上下载
-
DSP中浮点转定点运算--定点数的加减乘除运算
3.定点数的加减乘除运算 简单的说,各种运算的原则就是先把待运算的数据放大一定的倍数,在运算的过程中使用的放大的数据,在最终需要输出结果的时候再调整回去. 举个例来说,有如下运算: 复制代码 代码如下: - // coefs1 = 0.023423; coefs2=0.2131 float coefs1,coefs2; int result; - result = 34* coefs1+72* coefs2; - 代码的意思是,该模块需要输出一个整型的结果,但计算的过程中有浮点的运算.如果在定点
-
DSP中浮点转定点运算--浮点与定点概述
一:浮点与定点概述 1.1相关定义说明 定点数:通俗的说,小数点固定的数.以人民币为例,我们日常经常说到的如123.45¥,789.34¥等等,默认的情况下,小数点后面有两位小数,即角,分.如果小数点在最高有效位的前面,则这样的数称为纯小数的定点数,如0.12345,0.78934等.如果小数点在最低有效位的后面,则这样的数称为纯整数的定点数,如12345,78934等. 浮点数:一般说来,小数点不固定的数.比较容易的理解方式是,考虑以下我们日常见到的科学记数法,拿我们上面的数字举例,如123.
-
解决了个困扰了2天的问题,定点运算问题
分母变小了,相当于左移了 复制代码 代码如下: a=1-b/c; |b|<pow(2,23) |c|=pow(2,26) |a|<1 在运算个过程中,需要把该运算转换成定点运算. 想了2天,都没有想出怎么可以保证a的精度,因为a可能很小,如果简单的 复制代码 代码如下: a<<=8; 是无法保证a的精度的. 今天快要下班时,突然有灵机一动: 复制代码 代码如下: c>>=6; b<<=8; a=1<<14-b/c; //相当于 a<<
-
DSP中浮点转定点运算--定点数模拟浮点数运算及常见的策略
4.定点数模拟浮点数运算及常见的策略 相信大家到现在已经大致明白了浮点数转换成定点数运算的概貌.其实,原理讲起来很简单,真正应用到实际的项目中,可能会遇到各种各样的问题.具我的经验,常见的策略有如下几条: 1)除法转换为乘法或移位运算 我们知道,不管硬件平台如果变换,除法运算所需要的时钟周期都远远多于乘法运算和加减移位运算,尤其是在嵌入式应用中,"效率"显得尤为重要.以笔者的经验,其实,项目中的很大一部分除法运算是可以转换成乘法和移位运算,效率还是有很大提升空间的. 2)查表计算 有些
-
asp.net aspnetpager分页统计时与实际不符的解决办法
基本函数如下: 复制代码 代码如下: /// <summary> /// 需要分页时使用,根据参数和ConditionExpress获取DataTable /// </summary> /// <param name="_tableName">表名</param> /// <param name="_fieldNames">字段名集合,用逗号分开</param> /// <param na
-
关于springboot整合swagger问题及解决方法
一.前言 解决了一个困扰很久的问题.自己搭建的一个springboot项目,整合完jsp之后可以正常访问前端界面,但当再整合上swagger之后,前端界面就无法访问了.当注释掉swagger之后,前端界面又可以正常访问. 二.整合jsp 1.pom引入 <!-- 添加jsp引用 --> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-
-
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
今天整理以前写过的关于上传文件,并显示进度条的程序代码,对该代码进行优化整理.解决了一直困扰的问题:有时进度条没有达到100%,浏览器出现假死现象.在IE8.chrome测试非常完美. 项目需求: 上传APK,显示上传进度条,上传完成开始分析APK,并显示:正在分析apk数据,请稍后... ,分析完成后,显示:上传成功,重新上传 由于我电脑装的是winxp英文版,IE默认的是IE7,在测试的时候发现进度条不显示.百分比也不显示. 排除问题: 1.将DOM改成jquery方式,不显示 2.给递归调
-
JS表格组件BootstrapTable行内编辑解决方案x-editable
前言:之前介绍bootstrapTable组件的时候有提到它的行内编辑功能,只不过为了展示功能,将此一笔带过了,罪过罪过!最近项目里面还是打算将行内编辑用起来,于是再次研究了下x-editable组件,遇到过一些坑,再此做个采坑记录吧!想要了解bootstrapTable的朋友可以移步JS组件系列--表格组件神器:bootstrap table. 一.x-editable组件介绍 x-editable组件是一个用于创建可编辑弹出框的插件,它支持三种风格的样式:bootstrap.Jquery U
-
详解Android SpannableString多行图文混排的应用实战
TeXtView大家应该都不陌生,文本展示控件嘛! 就用TextView显示普普通通的文本,OK,很简单,Android入门的都会,没入门的在门缝外看两眼也都会,哈哈,开玩笑.那要是设计在开发需求中要求类似微信聊天表情一样在TextView中插入表情图片呢? 有的小伙伴就会说啦,"TextView添加图片我会啊,不就是drawableLeft,drawableRight嘛!" 嗯 ~ 也行,算是一种方法,可这有一个限制,首先,图片只能在TextView的两端,其次,两端都只能设置一张图
-
关于在LayUI中使用AJAX提交巨坑记录
如下所示: <script> layui.use(['layer', 'form','laydate'], function(){ var layer = layui.layer ,laydate=layui.laydate ,form = layui.form; form.on('submit(go)', function(data){ $.ajax({ url:'/user/addOrUpdate', method:'post', data:data.field, dataType:'JS
-
Java不要再使用!=null判空了!
前言 对于Java程序员来说,null是令人头痛的东西.时常会受到空指针异常(NPE)的骚扰.连Java的发明者都承认这是他的一项巨大失误. 那么,有什么办法可以避免在代码中写大量的判空语句呢? 有人说可以使用 JDK8提供的 Optional 来避免判空,但是用起来还是有些麻烦. 作者在日常工作中,封装了一个工具,可以可以链式调用对象成员而无需判空,相比原有的if null逻辑 和 JDK8提供的 Optional 更加优雅易用,在工程实践中大大提高了编码效率,也让代码更加的精准和优雅. 不优
-
从架构思维角度分析高并发下幂等性解决方案
目录 1 背景 2 幂等性概念 3 幂等性问题的常见解决方案 3.1 查询操作和删除操作 3.2 使用唯一索引 或者唯一组合索引 3.3 token机制 3.4 悲观锁 3.5 乐观锁 3.6 分布式锁 3.7 select + insert 3.8 状态机幂等 3.9 保证Api接口的幂等性 4 会议室的解决方案 5 总结 1 背景 我们的云办公系统有一个会议预定模块,每个月最后一个工作日的下午三点,会启动对下个月会议室的可用预定. 公司的 会议室大约200个,但是需求量远不止于此,所以会形
随机推荐
- kkpager 实现ajax分页查询功能
- extjs4 treepanel动态改变行高度示例
- javascript简易画板开发
- 使用Java 8中的Lambda表达式实现工厂模式
- 使用Java实现串口通信
- Oracle11.2.0.1如何升级到11.2.0.3 Oracle同版本升级
- 关于有些Asp.net项目发布后出现网址乱码的解决方法
- 学习JavaScript设计模式之享元模式
- 20分钟打造属于你的Bootstrap站点
- .net 日志系统解析
- php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
- 桑塔纳路考的注意事项小结(国内外)第1/2页
- js金额数字格式化实现代码(加减逗号处理)
- ASP.NET 图片加水印防盗链实现代码
- JAVA实现 SpringMVC方式的微信接入、实现简单的自动回复功能
- jQuery图片的展开和收缩实现代码
- 使用按钮控制以何种方式打开新窗口的属性介绍
- C#中DataTable 转换为 Json的方法汇总(三种方法)
- IIS7.5 配置自定义后缀的ASP文件 无法执行 总是提示下载的解决方法
- Android SharedPreferences实现数据存储功能