• 汇编 内存段划分和寄存器


    内存段

      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数据寄存器

        索引寄存器

      控制寄存器

      段寄存器

      

      数据寄存器:

        

      

  • 相关阅读:
    管理上第一是用人
    意义只存在于关系中,由其定义
    苦与累在希望面前啥也不是
    人是一切,组织是一切
    UI设计
    以理服人需要什么?
    灵活性是原则性基础上的灵活
    软件行业深层的文化属性
    自然原始分工
    把一个系统维护好需要做哪些工作?
  • 原文地址:https://www.cnblogs.com/tf-Y/p/4922912.html
Copyright © 2020-2023  润新知