zoukankan      html  css  js  c++  java
  • 3.6 栈

    在这里,我们对栈的研究只限于这个角度,栈是一种具有特殊访问方式的存储空间。它的特殊性在于,最后进入这个空间的数据,最先出去,后进先出(LIFO---last in first out)。

    .CPU提供的栈机制

    8086CPU提供入栈和出栈指令,最基本的如同push ax,表示将寄存器ax中的数据入栈,pop ax,表示将栈顶数据弹出送入ax,8086中的入栈和出栈操作都是以字为单位的。

    CPU如何知道当前要执行的指令所在的位置?CS、IP中存放着当前指令的段地址和偏移地址。

    CPU如何知道栈顶的位置?有两个寄存器,段寄存器SS和寄存器SP,栈顶的段地址存放在SS中,偏移地址存放在SP中。任意时刻,SS:SP指向栈顶元素。SS*16+SP=栈顶元素地址。8086CPU入栈时,栈顶从高地址向低地址增长。

    .栈的越界问题

    .push、pop指令

  • 相关阅读:
    001 分布式系统
    024 RabbitTemplate组件
    023 RabbitAdmin组件
    022 spring与Rabbitmq整合
    011 mandatory参数
    这样自己组装数据,醉了,
    cool,
    swift,
    page enable,
    构建 HTTPserver,
  • 原文地址:https://www.cnblogs.com/yangguang-it/p/6727138.html
Copyright © 2011-2022 走看看