首页 > 编程语言 >《程序是怎样跑起来的》第6章读书笔记

《程序是怎样跑起来的》第6章读书笔记

时间:2024-02-24 14:56:17浏览次数:32  
标签:编码 储存 文件 压缩 读书笔记 程序 算法 弗曼 怎样

前面讲述了内存跟磁盘,而内存跟磁盘里面的储存量也是有限的,那么我们就需要去压缩数据,而数据该怎么压缩呢?第6章就为我们介绍了。首先要了解文件中储存数据的格式文件是在磁盘等储存媒体中储存数据的一种形式,程序是以字节为单位向文件中储存数据的储存在文件中的数据。如果表示字符,那这个文件就是一个文本文件,如果表示图案,那这个文件就是一个图片文件,但无论如何我们都可以认为文件就是一串连续储存的字节数据。文件压缩有多种方式,第1种将文件内容用数据乘以重复次数来表示的压缩方式称为游程编码,游程编码常用在传真的图像压缩等领域但他也是有缺点的,因为邮政编码适合连续重复的多种情况而在平常中较少出现重复的情况,所以它并不适合用来压缩文本文件。第2种方法就是哈夫曼算法zip格式也是使用哈弗曼算法来进行压缩的。而对哈夫曼算法解释之前,又向我们解释了莫尔斯曼的算法。莫尔斯曼是根据字母在一般文本中的出现频率来确定他们的编码长度的哈弗曼算法的要点是根据不同的压缩对象文件来构建最优的编码系统,并基于这一编码系统来进行压缩。哈弗曼算法使用哈弗曼数来构建编码系统,从而实现了不用分割符就能区分字符的编码系统。而压缩也分为无损压缩和有损压缩。能够恢复到压缩前状态的压缩方式,称为无损压缩,不能恢复到压缩前状态的压缩方式,称为有损压缩,要记住文本文件是不能使用有损压缩的。

标签:编码,储存,文件,压缩,读书笔记,程序,算法,弗曼,怎样
From: https://www.cnblogs.com/shy1226/p/18031081

相关文章

  • Go语言精进之路读书笔记第33条——掌握Go并发模型和常见并发模式
    不要通过共享内存来通信,而应该通过通信来共享内存。——RobPike33.1Go并发模型CSP(CommunicatingSequentialProcess,通信顺序进程)模型。一个符合CSP模型的并发程序应该是一组通过输入/输出原语连接起来的P的集合。Go始终推荐以CSP模型风格构建并发程序。Go针对CSP模型提供......
  • 通过汇编语言认识程序的真面目
    汇编语言是使用助记符来编写程序的。人们发明了一种方法,为每个本机代码的指令分配一个英语缩写来表示其功能。这些缩写称为助记符,使用助记符的编程语言称为汇编语言。即使是用汇编语言编写的源代码,最终也必须转换成本机代码才能运行。用来完成这种转换的程序称为汇编器,这个转换的......
  • 《程序是怎样跑起来的》第十一章
    这一章主要讲述了高级编程语言与计算机底层硬件之间的交互过程,让我意识到编程不仅仅是编写代码那么简单。我逐渐理解了从高级语言编写的代码到计算机底层硬件执行的指令之间的转换过程。这让我对编程思维有了全新的认识。第十一章还涉及了现代计算机科学知识的全面梳理,包括计算......
  • 通过汇编语言了解程序内部
    本地代码不易理解,因而产生了一种想法,在各本地代码中附带表示其功能的英语单词缩写例如,加法运算的本地代码中加add,这些缩写称为助记符,使用助记符的编程语言叫做汇编语言。但是即使是汇编语言,最终也需要转换成本地代码才能运行负责转换工作的程序称为汇编器;转换这一处理称为汇编。......
  • 《程序是怎样跑起来的》第七章——程序是在何种环境下运行的
    本章讲解内容围绕操作系统和运行环境。以下是是本章大致内容的总结:运行环境=操作系统+硬件,不同操作系统之间不能相互沟通,硬件CPU只能解释自身固有的机器语言,不同CPU能解释的机器语言的种类不同。机器语言的程序称为本地代码,而我们用各种语言编写的代码,在编写时仅仅只为文本文件......
  • 程序是怎么跑起来的第四章
    本章内容学习对内存有了更加深刻的了解,首先数据类型其实就是占据怒存区域的大小和存储在该内存区域的数据类型,LIFO就是栈的数据结构,而指针就是用于存储内存址的变量,栈是先入后出的方式的数据结构,内存实际上就是一种名为IC的电子元件,内存IC有多种用于输出的大量引脚,IC的引脚,VC......
  • 《程序是怎样跑起来的》——第11章 硬件控制方法
    一、应用和硬件1、在用C语言等高级编程语言开发的Windows应用中,大家很少能接触到直接控制硬件的指令。这是因为硬件的控制是由Windows全权负责的。Windows提供了通过应用来间接控制硬件的方法。利用操作系统提供的系统调用功能就可以实现对硬件的控制。示例:应用通过操作系统间接......
  • 《程序是怎样跑起来的》第六章——尝试亲自压缩数据
    回答章前问题:1、字节,一字节等于八位2、DOC和TXT肯定不是,DOC是word文档的后缀,TXT是文本文件的后缀。答案是LZH。(压缩文件扩展名)3、?      注:不会,问题:数据的值*循环次数来表示的压缩方法是RLE算法还是哈夫曼算法? (什么是RLE算法?哈夫曼算法?)4、一个半角英数为一字......
  • 第10章通过汇编了解程序的实际构成
    汇编语言的源代码组成:由转换成本地代码的指令(操作码)与针对会汇编器的伪指令构成伪指令:负责把程序的构造及汇编的方法指示给汇编器,伪指令本身无法转换成本地代码。段定义:用来划定范围区域,是一个连续的内存空间,在程序中表示一段命令和数据等程序构成的集合体,一个程序由多个段构成......
  • 《程序是怎样跑起来的》第七章读后感
    这一章让我对不同操作系统的API有了更深入的理解。API是应用程序接口的缩写,它就像是操作系统和程序之间的桥梁,使得程序能够利用操作系统提供的各种功能。不同的操作系统可能有不同的API,这也导致了在不同操作系统上开发程序时需要做出相应的调整。关于虚拟机,我觉得它就像是一......