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

本章就主要讲了内存,和内存的使用。

首先我们了解到了内存集成电路的组成,内存IC中有电源、地址信号、数据信号、控制信号等用于输人输出的大量引脚,通过为其指定地址,来进行数据的读写。

接下来就是指针,指针也是一一种变量,它所表示的不是数据的值,而是存储着数据的内存的地址。通过使用指针,就可以对任意指定地址的数据进行读写。

‌数组我们已经有所了解过了,为了使数组使用更加方便,我们引入栈,队列,链表和二叉查找树的概念。栈和队列,都可以不通过指定地址和索引来对数组的元素进行读写。需要临时保存计算过程中的数据、连接在计算机上的设备或者输入输出的数据时,都可以通过这些方法来使用内存栈和队列的区别在于数据出人的顺序是不同的。在对内存数据进行读写时,栈用的是后人先出方式,而队列用的则是先人先出方式。如果我们在内存中预留出栈和队列所需要的空间,并确定好写人和读出的顺序,就不用再指定地址和索引了。

通过使用链表,可以更加高效地对数组数据(元素)进行追加和删除处理。而通过使用二叉查找树,则可以更加高效地对数组数据进行检索。在数组的各个元素中,除了数据的值之外,通过为其附带上下一个元素的索引,即可实现链表。而二叉查找树是指在链表的基础上往数组中追加元素时,考虑到数据的大小关系,将其分成左右两个方向的表现形式,方便检索。

posted @ 2019-02-23 18:14  封爵古怪  阅读(68)  评论(0编辑  收藏  举报