程序的 MIPS .data 部分?

Wor*_*ole 1 assembly mips

我不明白 .data 部分专门用于什么?和想说 y = 8 有可比性吗?难道您不能将 8 的立即数加载到某个相同的寄存器中吗?

nin*_*alj 5

它用于存储,嗯,嗯,数据

一个典型的程序将有几个部分:

  • .text? 对于代码(程序文本)
  • .rodata? 用于只读数据
  • .data? 用于数据
  • .bss? 对于未初始化的数据
  • ...

C 全局变量和静态局部变量转到.dataor .bss(它们在加载程序时创建,并在程序结束时销毁,它们的生命周期是整个程序执行)。C 局部变量入栈(进入函数时被创建,离开函数时被销毁),通过malloc()go分配的 C 存储进入堆(它们由程序员动态创建和销毁,它们的生命周期是动态的)。