zoukankan      html  css  js  c++  java
  • 汇编 内存段划分和寄存器

    内存段

      BSS段:BSS段,Block Start by Symbol,通常指用来存放程序中未初始化(未赋值: int x )的全局变量的一块内存区域,属于静态内存分配。

      数据段:存放程序中已初始化的全局变量的一块内存区域,属于静态内存分配。(赋值int x=100;)

      代码段:通常指用来存放程序执行代码的一块内存区域(编译后)。

      堆:用于存放进程运行中被动态分配的内存段,大小可动态变化。当进程调用malloc等函数分配内存时,新分配的内存就被动态添加到堆上(堆被扩张),当利用free等函数释放内存时,被释放的内存从堆中被剔除(堆被缩减)。

      栈:栈又称堆栈,存放程序临时创建的局部变量

    寄存器

      分类:

      通用寄存器:

        数据寄存器:

          AX是主要累加器(EAX)

          BX基址寄存器(EBX)

          CX技术寄存器(ECX)

          DX数据寄存器(EDX)

        指针寄存器

          IP:存储下一个要执行的指令的偏移地址。IP与CS寄存器给出了完整的代码段中的当前指令地址。(EIP)

          SP:提供程序堆栈内的偏移值。SP和SS寄存器是指程序堆栈的当前位置的数据或地址。(ESP)

          BP:帮助在引用的参数变量传递到一个子程序。(EBP)

    AX是主要累加器,用于输入/输出和多数算术运算指令。

        BX基址寄存器

        CX技术寄存器

        DX数据寄存器

        索引寄存器

      控制寄存器

      段寄存器

      

      数据寄存器:

        

      

  • 相关阅读:
    POJ1785 Binary Search Heap Construction
    Bzoj1185 [HNOI2007]最小矩形覆盖
    POJ2409 Let it Bead
    Bzoj2732 [HNOI2012]射箭
    Bzoj4515 [Sdoi2016]游戏
    Bzoj3925 [Zjoi2015]地震后的幻想乡
    Bzoj3223 Tyvj 1729 文艺平衡树
    COGS2642 / Bzoj4590 [Shoi2015]自动刷题机
    Bzoj1313 [HAOI2008]下落的圆盘
    python——描述符
  • 原文地址:https://www.cnblogs.com/tf-Y/p/4922912.html
Copyright © 2011-2022 走看看