计算机的错误计算(三十四)

摘要  用错数预测 a^x(或 pow(a,x))函数的结果中含有的错误数字的个数,并与Visual Studio 和Excel 的输出中含有的错误位数相比较。结果显示,预测与实际一致。

       对于 a^x(或 pow(a,x))函数,根据 a与 x的不同,有多种计算算法。其中一种计算方法是利用等价公式 e^{x\ln(a)} 来计算。

例1.  假设计算机利用 e^{-99.88\times\ln(90)} 计算 90^{-99.88} ,请预测计算机的输出中可能存在的错误数字个数。

       计算机首先计算 (-99.88)\times\ln(90) 的值,然后计算 e^{(-99.88)\times\ln(90)}

       根据计算机的错误计算(二十七)知,前者即自变量的错误数字个数会影响到后者即函数值的结果的错误数字个数。具体有关系:j-k\approx m+m_1-m_2\,.  其中 等号左边的 2个变量依次表示函数值与自变量的错误数字个数,右边 3个变量依次代表导数、自变量以及函数值的扩展整数位数(扩展的意思是可以为任意整数)。

       对于函数 e^x 来说,其导函数不变,因此,m=m_2\,.  这时,上式变成了 j-k\approx m_1\,, 即 j\approx k+m_1\,.  它意味着函数值的结果的错误数字个数约等于自变量的错误数字个数与自变量的整数位数的和。

       下面给出计算机计算自变量 (-99.88)\times\ln(90) 值的过程,以便获得上述两个值 k 与 m_1\,.

(-99.88)_{10}\times\ln((90)_{10})\\ \approx (-\underbrace{1100011.1110000101000111101011100001010001111010111000}_{\textup{53 bits}})_2\\\times\ln((1011010)_2)\\ =(-99.8799999999999954525264911353588104248046875)_{10}\\\times\ln((90)_{10})\\ =(-99.8799999999999954525264911353588104248046875)_{10}\\\times(4.499809670330265066808481928529415616896...)_{10}\\\approx (-99.8799999999999954525264911353588104248046875)_{10}\\\times(\underbrace{100.01111111111100111000011011001100010010110000010000}_{\textup{53 bits}})_{2}\\= (-99.8799999999999954525264911353588104248046875)_{10}\\\times(4.4998096703302650212208391167223453521728515625)_{10}\\= (-449.4409898725868498567721402184132729378729...875)_{10}\\\approx (-111000001.01110000111001001011011001011000101000001011)_2\\= (-\underbrace{\textcolor{blue}{449.440989872586}\textcolor{red}{\,8}}_{\textup{16 digits}}4019252541474997997283935546875)_{10}\,.

这样,上述蓝色与红色数字的组合为双精度下 16位的结果;而其整数位数为 3位,即 m_1=3\,.

       另外,由 ISReal 软件 可得 16位的正确结果是 -\textcolor{blue}{449.440989872586}\textcolor{red}{\,9}\,.  通过比较上述计算值与真实值,容易看出只有两个红色数字不同,因此 k=1。于是,若利用 e^{(-99.88)\times\ln(90)} 计算 90^{-99.88},则计算机的输出中会有约 j\approx k+m_1=1+3=4 位错误数字。 

例2.  在 Windows 10下,利用 Excel 2019MSO 以及 Visual Studio 2010 计算 90^{-99.88} 的值。

       首先, 由 ISReal 软件 知,16位正确的近似值为 6.46038138673\textcolor{red}{\,4883}\textup{\,e}-196\,.

     (1)在 Excel 的单元格中分别输入:

=\textup{EXP}(-99.88*\textup{LN}(90))\\ =\textup{POWER}(90,-99.88)

则输出的结果完全相同,并均有 4位错误数字。

       下面是它们的贴图:

上面是第1张图.

上面是第2张图.

     (2)在 Visual Studio 2010中运行下列两条语句

 printf("\%.15e",exp(-99.88*log((double)90)));\\ printf("\%.15e",pow((double)90,(double)-99.88));

则输出分别为 6.460381386735107e-196 与 6.460381386735015e-196.

       于是,两个结果同样均有 4位错误数字。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/46196.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 静态变量与动态变量的区别及用法

在 C# 中,"静态变量"与"动态变量"并不是直接相关的概念,但可以根据您的问题提供一些解释。静态变量和动态变量通常与变量的生命周期和类型绑定相关。以下是两者的一些区别: 静态变量(Static Variables&#…

3.RabbitMQ安装-Centos7

官方网址:gInstalling RabbitMQ | RabbitMQ 安装前提,需要一个erlang语言环境。 下载 erlang: Releases rabbitmq/erlang-rpm GitHub rabbitmq-server: 3.8.8 Releases rabbitmq/rabbitmq-server GitHub 安装命令 (说明i表示安装&#xff…

SCI一区级 | Matlab实现SSA-CNN-GRU-Multihead-Attention多变量时间序列预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.【SCI一区级】Matlab实现SSA-CNN-GRU-Multihead-Attention麻雀算法优化卷积门控循环单元融合多头注意力机制多变量时间序列预测,要求Matlab2023版以上; 2.输入多个特征,输出单个…

Python--MySQL及其使用

1. MySQL 简介 MySQL 是一个开源的关系型数据库管理系统(RDBMS),广泛用于各种应用程序,支持多种操作系统。它使用 SQL 语言进行数据查询、管理和操作。 2. MySQL 的主要特点 跨平台:支持多种操作系统,如…

一文掌握Prometheus实现页面登录认证并集成grafana

一、接入方式 以保护Web站点的访问控制,如HTTP 服务器配置中实现安全的加密通信和身份验证,保护 Web 应用程序和用户数据的安全性。 1.1 加密密码 通过httpd-tools工具包来进行Web站点加密 yum install -y httpd-tools方式一:通过htpasswd生…

智慧物流园区整体架构方案(46页PPT)

PPT介绍 将深入探讨如何通过高度集成的信息技术和物联网设备,打造一个自动化、高效与可持续发展的现代物流体系。该方案从智能感知层开始,利用传感器、RFID技术、GPS等手段实时采集物流数据;接着是网络传输层,借助高速且稳定的通信…

姓名配对测试源码

源码简介 姓名配对测试源码,输入两人姓名即可测试缘分,可查看朋友到底喜欢谁的趣味源码。 自己手动在数据库里修改数据,数据库里有就会优先查询数据库的信息, 没设置的话第一次查询缘分都是非常好的 95-99,第二次查…

日常学习--20240717

1、spring事务失效的几种情况? 自己new的对象(非spring定义的bean),或者同一个类的方法调用(this.调用,未使用动态代理),这两种方式都会绕过spring的aop对应的数据库不支持事务事务…

牛奶供应(三)

一个字贪&#xff0c;第一天&#xff0c;只能选择制作方式&#xff0c;后面的每一天&#xff0c;在<今天制作>与<前期存储>之间取更优解 例如样例&#xff1a;100 5&#xff0c;200 5&#xff0c;90 20&#xff0c;存储成本为10 第1天&#xff1a; 一定是制作&…

C++ map和set的使用

目录 0.前言 1.关联式容器 2.键值对 3.树形结构的关联式容器 3.1树形结构的特点 3.2树形结构在关联式容器中的应用 4.set 4.1概念与性质 4.2使用 5.multiset 5.1概念与性质 5.2使用 6.map 6.1概念与性质 6.2使用 7.multimap 7.1概念与性质 7.2使用 8.小结 &a…

Spring MVC 中 HttpMessageConverter 转换器

1. Spring MVC 中 HttpMessageConverter 转换器 文章目录 1. Spring MVC 中 HttpMessageConverter 转换器2. 补充&#xff1a;什么是 HTTP 消息3. 转换器3.1 转换器转换的是什么 4. Spring MVC中的 AJAX 请求5. ResponseBody 将服务器端的 return 返回值转化为“字符串(JSON格式…

大语言模型-基础及拓展应用

一、基础模型 1、Transformer 2、bert 3、gpt 二、大语言模型 三、句子向量 四、文档解析 1、通用解析 2、docx解析 3、 pdf解析 4、pptx解析 五、向量数据库

rtf是什么格式的文件?rtf格式和word的区别是什么?

RTF是什么格式的文件? RTF&#xff08;富文本格式&#xff0c;Rich Text Format&#xff09;和Word文档&#xff08;以.doc和.docx为扩展名的Microsoft Word文档&#xff09;是两种常用的文本文件格式。它们在文件结构、兼容性、功能和使用场景等方面存在一些显著差异。 比如…

Android 14新特性:选择性照片和视频访问授权

Android 14 引入了选择性照片和视频访问授权的新特性&#xff0c;这是一项旨在增强用户隐私和数据安全的重要更新。在之前的 Android 版本中&#xff0c;应用程序请求访问设备上的照片和视频时&#xff0c;通常会要求完全访问权限&#xff0c;这意味着应用可以访问用户图库中的…

arcgis怎么选取某个指定区域地方的数据,比如从全国乡镇数据选取长沙市乡镇数据

一共5个步骤&#xff0c;没一句废话&#xff0c;耐心看完。 1、如图&#xff0c;先将数据加载到arcgis里面&#xff0c;我们要选取里面长沙市的范围数据。 2、选取长沙市的语句 “市” like ‘长沙%’ 切记&#xff0c;切记&#xff0c;切记。所有符号要在 输入法英文状态…

微信小程序 vant-weapp的 SwipeCell 滑动单元格 van-swipe-cell 滑动单元格不显示 和 样式问题 滑动后删除样式不显示

在微信小程序开发过程中 遇到个坑 此处引用 swipeCell 组件 刚开始是组件不显示 然后又遇到样式不生效 首先排除问题 是否在.json文件中引入了组件 {"usingComponents": {"van-swipe-cell": "vant/weapp/swipe-cell/index","van-cell-gro…

电脑系统重装数据被格式化,那些文件还有办法恢复吗?

在日常使用电脑的过程中&#xff0c;系统重装或格式化操作是常见的维护手段&#xff0c;尤其是在遇到系统崩溃、病毒感染或需要升级系统时。然而&#xff0c;这一操作往往伴随着数据丢失的风险&#xff0c;尤其是当C盘&#xff08;系统盘&#xff09;和D盘&#xff08;或其他数…

linux|多线程(一)

主要介绍了为什么要有线程 和线程的调用 和简单的对线程进行封装。 背景知识 a.重谈地址空间 我们知道物理内存的最小单元大小是4kB 物理内存是4G那么这样的单元友1M个 操作系统先描述再组织struct page[1M] 对于32位数据字长的机器&#xff0c;页表有2^32条也就是4G条&#…

嵌入式linux相机 转换模块

convert_manager.c #include <config.h> #include <convert_manager.h> #include <string.h>static PT_VideoConvert g_ptVideoConvertHead NULL;/*********************************************************************** 函数名称&#xff1a; Register…

异常检测在机器学习中的重要性

异常检测在机器学习中的重要性 在机器学习领域&#xff0c;异常检测&#xff08;Anomaly Detection&#xff09;是一种识别数据集中异常或不寻常模式的任务。这些异常点可能代表错误、噪声、或更有趣的是&#xff0c;它们可能揭示了某些异常行为或新现象。异常检测在许多领域都…