首页 > 其他分享 >第三章

第三章

时间:2024-02-25 10:22:38浏览次数:24  
标签:运算 第三章 计算机 0.1 浮点数 二进制 小数

**在第三章中主要讲述了计算机进行小数运算时出错的原因,内容主要有以下:

大家可能会认为“万能的计算机是不会出现计算错误的”。但实际上,依然存在程序运行后无法得到正确数值的情况。其中,小数运算就是一个典型的例子。在本章中我们首先了解了将二进制表示的小数转换成十进制的方法,这样便于理解计算机运算出错的原因,计算机之所以会出现运算错误,是因为“有一些十进制数的小数无法转换成二进制数”。例如,十进制数 0.1,就无法用二进制数正确表示,小数点后面即使有几百位也无法表示。在计算机进行小数运算时无法正确表示的数值,最后都变成了近似值。计算机这个功能有限的机器设备,是无法处理无限循环的小数的。因此,在遇到循环小数时,计算机就会根据变量数据类型所对应的长度将数值从中间截断或者四舍五人。我们知道,将0.3333…这样的循环小数从中间截断会变成0.333333,这时它的3倍是无法得出1的(结果是0.999999 ),计算机运算出错的原因也是同样的道理。很多编程语言中都提供了两种表示小数的数据类型,分别是双精度浮点数和单精度浮点数。双精度浮点数类型用 64 位、单精度浮点数类型用 32 位来表示全体小数。在C语言中,双精度浮点数类型和单精度浮点数类型分别用 double 和 float 来表示。不过,这些数据类型都采用浮点数来表示小数。浮点数是指用符号、尾数、基数和指数这四部分来表示的小数。因为计算机内部使用的是二进制数,所以基数自然就是2。因此,实际的数据中往往不考虑基数,只用符号、尾数、指数这三部分即可表示浮点数。也就是说,64 位(双精度浮点数)和 32 位(单精度浮点数)的数据,会被分为三部分来使用 。那么我们如何避免计算机在计算小数时出现错误呢?1 根据程序目的不同,无视错误 2 把小数转化成整数计算,采用BCD方法。比如0.1这个数,计算机是用一种二进制格式存储小数的,这个二进制格式不能精确表示0.1,它只能表示一个非常接近0.1但又不等于0.1的一个数。**

标签:运算,第三章,计算机,0.1,浮点数,二进制,小数
From: https://www.cnblogs.com/wzc123/p/18032103

相关文章

  • 对于信息方法的认识(《系统科学方法概论》第三章)
    阅读《系统科学方法概论》第三章——信息科学,我了解了系统科学的第三个部分“信息论”。其中包括信息科学的发展历史-什么是信息-信息的属性及规律-信息方法。其中对于信息科技的发展历史这一方面,书中阐述了从古代通信方式-近代通信科学-现代通信理论-现代信息科学。其中现代通信......
  • 《程序是怎样跑起来的》第三章读后感
    《程序是怎样跑起来的》这本书的第三章主要围绕计算机处理二进制、十进制以及小数运算的原理和可能遇到的问题进行讲解。这一章节深入探讨了二进制与十进制、十六进制之间的转换方式,例如将二进制数转换为十进制的方法,以及二进制数转为十六进制数的方法。此外,还详细介绍了浮点数的......
  • 《系统科学方法概论》第三章信息方法观后感
    系统科学方法论是探讨复杂系统性质、结构和行为规律的一门跨学科科学。第三章“信息方法”是其中的重要内容之一,信息在系统科学中扮演着至关重要的角色。通过阅读这一章,我对信息方法在系统科学中的应用有了更深入的理解和认识。系统科学方法论中的信息方法是指利用信息论等相关理......
  • 《程序是怎么跑起来的第三章》
    《程序是怎样跑起来的》这本书的第三章主要是探讨计算机运算小数时可能出现的问题以及相应的解决方案。在这一章节中,作者提出了一个问题:为什么计算机运算小数会出错?答案是因为有些十进制小数无法用二进制准确表示,这可能导致程序运行结果与预期存在偏差。为了解决这个问题,作者介......
  • 《系统科学方法概论》第三章:信息方法
    这一章节并没有简单地停留在理论层面,而是通过丰富的案例和实际应用为我们报示了信自方法在系统利学中的重要性和价值。首先,我对系统科学的重要性有了更深入的认识。系统科学作为一个跨学科的研究领域,其核心思想在于整体性、相互关联性和动态变化。在解决现代社会中的复杂问题时,系......
  • 《系统科学方法概论》第三章
    系统工程是一门跨学科的工程学科,旨在应用系统思维和系统方法来解决复杂系统的设计、开发和运营问题。它强调整体性、协同性和综合性,为工程师提供了一种有效的方法论和工具箱,以应对复杂系统工程所面临的挑战。系统工程经历了从军事领域到民用领域、从理论研究到实际应用的发展过程......
  • 程序是怎么跑起来的第三章
    在上一章学习了二进制的运算,在本章将学习计算机小数运算的方法,通常认知下,我们认为计算机是不会出现错误的,但实际上小数运算就是一个典型的例子,通常我们所知道的计算机的所有信息都用二进制形式来处理,但是使用二进制来表示整数和小数的方法却有很大不同,二进制转化为十进制,只需要将......
  • 《系统科学方法概论》第三章读后感
    第三章为信息方法,通常听到信息就想到了如何传播,在古代有烽火,近代是通过电磁波,而现代已经有激光通信等。信息一词并不是生下来就有的,而是唐朝第一次使用了它,形成了众多的信息定义和观点,信息需要介质,信息的本质在于使不知道的人知道,传播。信息的功能可以使人发生改变但又分成了三点,......
  • 《系统科学方法概论》第三章读后感
    《系统科学方法概论》第三章主要讲的是信息方法。在第一节作者介绍了信息科学的简史,古代的通信方式和现代的通信方式,古代通信是适应当时生产、生活需要,在当时的科技条件下产生的,但随着人类社会交往活动的增加,古代通信方式日益暴露出一些缺点:(1)通信距离短,国际间、地区间通信受地......
  • 《程序是怎样跑起来的》第三章读书笔记
    计算机出现运算出错是因为有一些十进制的小数无法转化成二进制数。计算机因为无法正确的表示数值,最后都变成了近似值,计算机这个功能有限的机器设备,是无法处理无限循环的小数的,因此,遇到循环小数时,计算机就会根据变量数据类型所对应的长度将数值从中间截断或者四舍五入。双精度浮点......