gpt4 book ai didi

c - C 中的变量是否类似于汇编中的标签?

转载 作者:行者123 更新时间:2023-11-30 20:06:31 26 4
gpt4 key购买 nike

简单的问题:C 中的变量是否类似于汇编中的标签?

或者Assembly中的标签就像C中的指针?有人愿意向我描述一下差异和相似之处吗?

最佳答案

程序集中的标签标记内存位置。它相当于 C 中的静态变量(的地址),或者在导出标签时相当于导出的全局变量。

C 也有局部变量,它们通常存储在函数调用的堆栈帧中。这在汇编中也很常见,通过调整函数中的堆栈指针来腾出空间(通常使用 x86 BP 等寄存器来方便地访问它们)。通过优化,局部变量也可以存储在寄存器中,这在汇编中也很常见。

汇编中的标签本身意味着内存位置的地址,汇编中没有“变量”,您可以通过使用标签标记的地址来获取值。 C中的静态变量指的是变量(值),没有像汇编中那样直接创建标签的方法,需要通过&来获取地址。但这实际上只是语法差异。

关于c - C 中的变量是否类似于汇编中的标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23349820/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com