zoukankan      html  css  js  c++  java
  • 《程序是怎样跑起来的》第四章

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

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

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

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

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

  • 相关阅读:
    window10 禁止更新
    安装node.msi 格式的文件失败
    url参数的转码和解码
    Linux12-内存管理
    C++四种cast
    Linux内核5-系统调用
    Linux内核3-进程管理
    UNIX12-线程(下)线程控制
    UNIX11-线程(上)
    Linux内核8-中断下半部和推后执行的工作(下半部)
  • 原文地址:https://www.cnblogs.com/xl592338942/p/10423665.html
Copyright © 2011-2022 走看看