首页 > 编程语言 >《程序是怎样跑起来的》第六章

《程序是怎样跑起来的》第六章

时间:2024-02-26 11:33:38浏览次数:23  
标签:文件 可逆性 哈夫曼 字符 压缩 程序 算法 第六章 怎样

本章主要讲述了可逆性压缩和非可逆性压缩以及文件的两种压缩方式,分别为RLE算法压缩方式,哈夫曼算法压缩方式,至于文件是什么,压缩又是什么,为什么要对文件进行压缩?通过对本章的阅读,知道了文件就是字节数据的集合,是将数据存储在磁盘上分一种形式;压缩指的是通过特殊的算法缩小目标数据所占存储空间大小;至于为什么对文件进行压缩,主要是节约存储空间,加快上传下载速度。所谓可逆性压缩就是指可以将压缩后的文件还原到压缩前的状态;而非可逆性压缩与可逆性压缩相反,是指压缩后的文件无法还原到压缩前的状态。RLE算法机制是将连续出现的重复字符转换为字符*重复次数,例如aabbcd,压缩后成为a2b2c1d1,但由于文本文件很少出现同样字符多次连续重复出现,也就导致了压缩后的文件要比压缩前的文件所占空间要大,所以RLE一般用于图片文件或EXE文件的压缩。哈夫曼算法是哈夫曼在1952年提出的压缩算法,其主要原理是将多次出现的字符用小于8位的字节数表示,不常用的字符则用超过8位字节数来表示,通过建立哈夫曼树在不使用字符区分符号的情况下区分编码体系

标签:文件,可逆性,哈夫曼,字符,压缩,程序,算法,第六章,怎样
From: https://www.cnblogs.com/ghost109/p/18033956

相关文章

  • 《程序是怎样跑起来的》读后感——第十二章
    在读完了本章,此书也已经快到末尾了,这个章节让我们可以了解到从前觉得很神秘的东西:程序就如同是由计算机执行的各种指令罗列起来的文章。在计算机内部的CPU,通过对该文章的内容进行解析和运行,来控制连接到计算机的各种外围设备。具体来说,控制就是指CPU和各种设备之间配合进行数......
  • uniapp-vue2-微信小程序,canvas 裁切图片的代码
    <canvasclass="edit-question-canvas"type="2d"id="canvasCuteImage"></canvas>/*.edit-question-canvas{position:absolute;left:-750rpx;width:690rpx;height:100rpx;}样式随便自己写*/......
  • 《程序是怎样跑起来的》读后感——第十一章
    本章开篇就对我们发出提问,应用到底和软件有关吗?在读了本章后,答案显而易见,那就是有关。在用C语言等高级编程语言开发的Windows应用中,我们很少能接触到直接控制硬件的指令。这是因为硬件的控制是由Windows全权负责的。不过,Windows提供了通过应用来间接控制硬件的方法。 应用利用操......
  • 第九章 操作系统与应用程序的关系
    《程序是怎样跑起来的》的第九章主要探讨了操作系统与应用程序之间的关系。首先,我们要知道监控系统的主要功能是加载并运行程序,监控系统可以说是操作系统的原型。以及操作系统上运行的程序叫做应用程序。其次,从历史发展看操作系统的功能。很久之前出现于要从零编写程序,于是有人......
  • 《程序是怎样跑起来的》第十章读后感
    读完《程序是怎样跑起来的》第十章,我对通过汇编语言了解程序的实际构成有了更深刻的认识。这一章内容让我仿佛揭开了程序运行的神秘面纱,看到了底层的实际运作。通过学习汇编语言,我明白了程序并不只是高级语言中的一行行代码,而是由一系列底层指令和操作构成的。汇编语言让我深入了......
  • JavaFlink系列之一:Maven程序搭建及Java入门案例多种写法
    JavaFlink系列之一:Maven程序搭建及Java入门案例多种写法 一、Flink项目依赖配置<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://maven.apache.org/POM/4.0.0"......
  • 《程序是怎样跑起来》第十一章访问硬件的方法
    作者从CPU与内存的关系入手,详细阐述了程序在执行过程中如何与内存进行交互。内存作为计算机中重要的存储设备,存储着程序运行所需的各种数据和指令。CPU通过内存地址来访问内存中的数据,而内存地址则是由程序中的变量和指令地址转换而来。这一过程中,涉及到了地址空间、地址转换、内......
  • 《程序是怎样跑起来的》如何让计算机学习
    计算机学习需要充分利用计算机的资源。在第十一章中,我们学习了程序如何访问硬件的方法,包括内存管理、设备交互、多核CPU的并行处理等。这些技术为计算机学习提供了强大的支持。例如,通过利用多核CPU的并行处理能力,我们可以加速机器学习模型的训练;通过高效的内存管理,我们可以处理大......
  • Rockchip RK3399 - DRM vop驱动程序
    ----------------------------------------------------------------------------------------------------------------------------开发板:NanoPC-T4开发板eMMC:16GBLPDDR3:4GB显示屏:15.6英寸HDMI接口显示屏u-boot:2023.04linux:6.3----------------------------------......
  • Rockchip RK3399 - DRM edp驱动程序
    ----------------------------------------------------------------------------------------------------------------------------开发板:NanoPC-T4开发板eMMC:16GBLPDDR3:4GB显示屏:15.6英寸HDMI接口显示屏u-boot:2023.04linux:6.3----------------------------------......