首页 > 编程语言 >《程序是怎样跑起来的》第三章的读后感

《程序是怎样跑起来的》第三章的读后感

时间:2024-02-18 10:22:44浏览次数:33  
标签:读后感 运算 第三章 计算机 单精度 二进制 浮点数 程序 小数

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

标签:读后感,运算,第三章,计算机,单精度,二进制,浮点数,程序,小数
From: https://www.cnblogs.com/suyibing/p/18018847

相关文章

  • 《系统是怎样跑起来的》读后感——第四章 熟练使用有棱有角的内存
    1.内存的物理机制很简单内存实际上是一种名为内存IC的电子元件。虽然内存IC包括DRAM、SRAM、ROM等多种形式,但从外部来看,其基本机制都是一样的。内存IC中有电源、地址信号、数据信号、控制信号等用于输入输出的大量引脚(IC的引脚),通过为其指定地址(address),来进行数据的读写。V......
  • 《程序是怎样跑起来的》自己动手压缩数据
    一,文件是以字节为单位记录的,文件是字节数据的集合体,文件就是一串连续的字节数据二,游程编码的原理将文件内容用数据成重复次数的方式进行压缩,就是游程编码缺点:对于图片压缩率比较高,对于文本,文件则会增加它的内容,使他文本需内存量更大三,哈夫曼算法哈夫曼算法将出现次数多的数......
  • 《程序是怎样跑起来的》第四章读后感
    计算机是处理数据的机器,而程序负责规定处理步骤和数据结构作为处理对象的数据储存在内存和磁盘里,因此程序员必须能够灵活的使用内存和磁盘。内存的物理结构十分简单,它的本质上是一种名为内存芯片的装置。内存芯片内部有很多能储存8比特数据的容器,只要指定容器的地址就可以对数据进......
  • 《程序是怎样跑起来的》读后感——第三章 计算机进行运算小数时出错的原因
    一、二进制的限制计算机内部所有的信息都是以二进制的形式存储和处理的。然而,并非所有的十进制小数都能被精确地用二进制表示。例如,0.1在十进制中是一个无限循环小数,但在二进制中却无法精确表示,只能进行近似表示。这种差异导致了计算机在运算小数时可能出现误差。二、浮点数表示......
  • 《程序是怎样跑起来的》计算机在计算小数时会出错的原因
    一,原因无法准确表示的值,就只能用近似值来表示计算机能力有限,无法处理无限小数,只能根据变量所对应的数据类型的数,采取四舍五入处理法进行处理。由于二进制为近似数,转化为十进制后与所求值存在误差,它是一种正常的现象。二,浮点数分类:双精度浮点类型有64位单精度浮点类型有32位......
  • 《程序是怎样跑起来的》让内存画方为圆
    一,内存的物理结构1.分类:RAM[可读可写的存储器][需要刷新]ROM[只读不写的存储器][不需要刷新]2.内存的芯片内存的芯片包括电源地址,信号,数据信号和控制信号二,内存的逻辑结构像一栋大楼程序中通过指定的变量的数据类型就可以改变读写物理内存的单位长度,很方便三,用好内存,先从数组开始1......
  • 《程序是怎样跑起来的》内存与磁盘的密切联系
    内存与磁盘的密切联系一,程序必须从硬盘加载到内存中才方可运行二,磁盘缓存内存空间临时存放,从磁盘读取出来的数据可提高磁盘数据的访问速度三,将磁盘当成内存使用的虚拟内存将磁盘的一部分模拟成内存来使用的机制使用方式:将运行页面换入将不运行的页面换出,使一个程序被割成多......
  • 《程序是怎么跑起来的》第四章观后感
    第四章“熟练使用有棱有角的内存”关于这一章,是目前我最感兴趣的一章,因为在编程过程中我经常遇到内存这类的问题,讲述了程序运行时对内存的合理使用与优化,通过深入剖析内存的结构和工作原理,带领读者探索内存管理的重要性以及如何在编程过程中利用内存优化程序性能。这一章节对于程......
  • 《程序是怎样跑起来的》用二进制来理解数据
    一,计算机用二进制处理信息的原因原因:CPU是一种集成电路,计算机内部均由集成电路构成集成电路所有的引脚都有直流电压0v或者加5v两种状态处理信息的单位:最小的单位是比特有一位最基本的单位是字节有八位数据的处理:101110转化为八进制是00101110[在最高位增零,以此类推]......
  • 程序是怎样跑起来的第六章读后感
    从第六章学到了节约内存的编程方法。了解磁盘的物理结构,磁盘的物理结构是指磁盘存储数据的形式。磁盘是通过把其物理表面划分成多个空间来使用的。划分的方式有扇区方式和可变长方式两种。文件储存的单位是字节。文件以字节为单位保存,文件是将数据存储在磁盘等存储媒介中的一种形......