首页 > 编程语言 >阅读《程序是怎样运行的》第四章

阅读《程序是怎样运行的》第四章

时间:2024-02-29 23:11:47浏览次数:16  
标签:程序 索引 地址 内存 IC 指针 数据 第四章 怎样

第四章主要是熟练使用有棱有角的内存。在之前的文章中提到内存,其实内存的物理机制是很简单的。接下来就来说说它为什么简单吧。内存实际上是一种名为内存IC的电子元件。虽然内存IC包括 DRAM、SRAM、ROM等多种形式,但从外部来看,其基本机制都是一样的。内存IC中有电源、地址信号、数据信号、控制信号等用于输入输出的大量引脚(IC的引脚),通过为其指定地址(address),来进行数据的读写。下面我们来看一下指针,指针是C语言的重要特征,但很多人都说它难以理解,甚至还有人因无法理解指针而对C语言的学习产生了很强的挫败感。指针也是一种变量,它所表示的不是数据的值,而是存储着数据的内存的地址。通过使用指针,就可以对任意指定地址的数据进行读写。虽然前面所提到的假想内存IC中仅有10位地址信号,但大家在 Windows 计算机上使用的程序通常都是32位(4字节)的内存地址。这种情况下,指针变量的长度也是32位。
下面让我们回到主题,解释一下本章标题中出现的“熟练使用有棱有角的内存”。首先,我们先来看一下内存最直接的使用方法。我们要用到数组。数组是指多个同样数据类型的数据在内存中连续排列的形式。作为数组元素的各个数据会通过连续的编号被区分开来,这个编号称为索引(index)。指定索引后,就可以对该索引所对应地址的内存进行读写操作”。而索引和内存地址的变换工作则是由编译器自动实现的。栈和队列,都可以不通过指定地址和索引来对数组的元素进行读写。需要临时保存计算过程中的数据、连接在计算机上的设备或者输入输出的数据时,都可以通过这些方法来使用内存。如果每次保存临时数据都需指定地址和索引,程序就会变得比较麻烦,因此要加以改进。栈和队列的区别在于数据出人的顺序是不同的。在对内存数据进行读写时,栈用的是LIFO(Last Input First Out,后人先出)方式,而队列用的则是FIFO(First Input First Out,先人先出)方式。如果我们在内存中预留出栈和队列所需要的空间,并确定好写人和读出的顺序,就不用再指定地址和索引了。

标签:程序,索引,地址,内存,IC,指针,数据,第四章,怎样
From: https://www.cnblogs.com/hhn-viyo/p/18045824

相关文章

  • 系统学第四章
    本章主要分为六个小节,从控制论史,什么是控制和控制系统,控制方式,控制系统的基本属性,控制过程,控制论的研究方法进行展开深入学习。第一节1,古代控制论的产生2,近代的控制论萌芽主要是在机械化大生产之上产生的自动调速技术和后来发展成的伺服机理论和反馈概念的提出3,现代控制论的建......
  • 《程序是怎么跑起来的》第十二章
    机器学习有很多不同的方法,有监督的学习就是给计算机提供大量带正确答案的数据。有监督学习适用于分类问题领域。程序来表示人类的思考习惯,例如用一段随机数来表示概率,概率可从一定程度上代替人类的习惯。由于借助公式产生的随机数具有一定的规律性,因此并不是真正的随机数,通常称为......
  • 系统科学概论第四章读后笔记
    第四章主要介绍了系统科学的基本原理和方法。通过阅读本章,我对系统科学的研究方法和思维方式有了更深入的了解。作者介绍了系统科学的研究方法。系统科学的研究方法主要包括系统分析、系统建模和系统优化。系统分析是通过对系统的结构和功能进行研究,揭示系统的内在规律和相互关系......
  • 《程序是怎样跑起来的》第十二章
    在本书的第十二章“让计算机‘思考’”中,作者带我们进入了人工智能和机器学习的奇妙世界,让我们看到了计算机如何从简单的执行任务发展到能够进行复杂的“思考”过程。如何才能让计算机思考呢?假如用编写程序做《猜拳游戏》,在猜拳游戏中,程序需要让计算机像猜拳选手一样来思考。......
  • ubuntu使用-ubuntu22.04添加自定义的程序到Favorites中
    ubuntu使用-ubuntu22.04添加自定义的程序到Favorites中ubuntu系统设置一、问题描述在ubuntu中使用storywriter,下载是一个压缩包,解压之后双击对应的程序就可以打开使用了。但是问题是,每次使用的时候都要到那个文件夹下面去双击,比较麻烦。想把这个程序添加到Favorites中,这样每次......
  • 第四章 控制方法
    在深入阅读了《系统科学方法概论》的第四章后,我对控制方法有了更为深刻的认识。首先,通过阅读第一节控制论史,我对控制论的发展历程有了清晰的认识。从古代的简单控制实践到现代的复杂系统控制,控制论逐渐发展成为一门独立的学科,为现代工程、经济、社会等领域提供了重要的理论支持。......
  • 《程序是怎样跑起来的》第十一章
    这一章讲的是硬件控制方法,windows提供了通过应用来间接控制硬件的方法,利用操作系统提供的系统调用功能就可以实现对硬件的控制。windows控制硬件时借助的是输入输出指令。其中具有代表性的两个输入输出指令就是IN和OUT。操作系统为应用程序提供了间接访问硬件的方法就是系统调用。......
  • 读系统方法科学概论第四章有感
    读了系统科学方法概论第四章后,我对系统科学方法有了更深入的理解。这一章主要介绍了系统分析方法,它是解决复杂问题的重要工具。计算机控制方法的精妙和复杂性很能够吸引人,这也是为什么那么多人选择这方面从而不断的努力挖掘,然而计算机控制方法也面临着一些挑战和问题,他不仅需要一......
  • 《系统科学方法概论》第四章
    在阅读了常绍舜的《系统科学方法概论》第四章之后,我对于系统科学方法论有了更为深入的理解。这一章主要聚焦于系统科学与现代科学的关系,以及系统科学在现代科学中的地位和作用。这一内容不仅从理论上对系统科学进行了深入的剖析,还结合了大量的实际案例,使得我对于系统科学在实际应......
  • 读程序是怎样跑起来的第12章有感
    本章节是本书的最后一个章节了,我在阅读最后这一个章节之前,有粗略的翻阅了之前的章节,感觉这本书对于我来说也是有很大的收获。这一章主要讲了怎样让计算机“活”起来,通过程序让他能简单的思考,以及利用内存和磁盘让他有记忆,用一个猜拳的程序让我们能更加的了解,这一张也让我意识到了......