腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
4
回答
标识
地址
是否
属于
堆
或
堆栈
或
寄存器
c++
、
c
、
memory-management
、
heap-memory
、
stack-memory
有没有可能准确地找出这个变量
属于
内存的哪一段?如果
是
,
是
如何实现的? 注意:我只有这个变量的
地址
,没有进一步的信息,如果变量
是
局部/全局等。
浏览 2
提问于2012-08-06
得票数 7
回答已采纳
3
回答
如何使用免疫调试器知道特定
地址
是否在
堆栈
或
堆
中?
debugging
我有一个
地址
(即0x010f73fc),我需要知道这个
地址
在哪里?它是
堆
的
还是
堆
的? 另一方面,如何区分
属于
堆栈
的
地址
和
属于
堆
的
地址
?
浏览 0
提问于2013-08-03
得票数 1
1
回答
如何确定内存
属于
堆
还是
堆栈
?
c++
、
c
、
memory
当我使用调试器查找变量的内存
地址
时,我得到了类似于0x602010
或
0x7fffffffe0d8的内容。第一个
是
堆
中的内存
地址
,另一个
是
堆栈
内存。我知道这一点,因为第一个
地址
来自malloc(),第二个
地址
是
局部变量的内存
地址
。 我很想知道,仅仅通过查看某个
地址
的内存<e
浏览 3
提问于2017-04-21
得票数 0
回答已采纳
1
回答
在内存中,
堆栈
底部和
堆
底部应该有相同的
地址
吗?
memory
、
linker
、
heap-memory
、
microcontroller
、
stack-memory
我使用的
是
带有tm4c123gh6pm链接器脚本的单片机。) + LENGTH(SRAM) - _stack_size;_stack_top = ORIGIN(SRAM) + LENGTH(SRAM);20000558 g .bss 00000000 _heap_bottom
是
正确的吗据我所见,
浏览 21
提问于2021-12-19
得票数 1
回答已采纳
2
回答
malloc()
是
如何知道
堆
从何处开始的?
c
、
malloc
、
heap-memory
当操作系统将一个进程加载到内存中时,它会初始化指向虚拟
地址
的
堆栈
指针,它决定了
堆栈
在进程的虚拟
地址
空间中的位置,程序代码使用这个
寄存器
来知道
堆栈
变量在哪里。我的问题
是
malloc()
是
如何知道
堆
从哪个虚拟
地址
开始的?
堆
是否总是存在于数据段的末尾,如果
是
这样的话,malloc()如何知道它在哪里?或者,它甚至
是
一个连续的内存区域,
还是
只是随机地与数
浏览 2
提问于2014-09-11
得票数 6
回答已采纳
1
回答
堆栈
、数据和指令段在哪里实现?
c
、
assembly
、
memory
、
x86-64
、
memory-segmentation
因此,内存分段在x86-64中被放弃了,但是当我们使用程序集时,我们可以在代码中指定.code和.data节/段,还有
堆栈
指针
寄存器
。因为当我们调试和看到某些C程序的反汇编视图时,
地址
空间
是
线性的,不分。当他们说数据段有全局、静态和
堆
的“部分”时,这是OS抽象吗?
浏览 2
提问于2015-01-17
得票数 0
回答已采纳
2
回答
是否可以确定
地址
引用是否
属于
进程
地址
空间中的静态/
堆
/
堆栈
c
、
heap-memory
、
memory-address
我们有一种机制来监视负载和存储指令,以捕获引用的
地址
。我想对这些
地址
进行分类,不管它们
属于
堆栈
、
堆
还是
分配静态变量的区域。有什么方法可以按程序进行这种分类吗? 我最初的想法
是
用一个小内存请求(1?)一旦进程开始运行,我就可以捕获
堆
的“基本
地址
”(
或
启动
地址
)。这样,我就可以区别那些静态分配的变量和其余的变量。对于那些不
属于
静态区域(即,
堆
和
堆栈
)
浏览 0
提问于2016-02-04
得票数 4
回答已采纳
1
回答
确定程序的存储器访问模式
memory-management
、
system-calls
我想提取程序访问的所有虚拟内存
地址
以及这些内存
地址
被访问的顺序。在Windows(首选)
或
Linux上有什么工具/系统调用可以让我这样做吗?谢谢!
浏览 0
提问于2013-01-22
得票数 2
回答已采纳
3
回答
如何坚持C编译器将局部变量放在
堆栈
上,而不是在
寄存器
中
c
、
gcc
、
garbage-collection
、
clang
、
tcc
我正在尝试将历史函数语言解释器(KRC用于EMAS)移植到现代系统( language ),它有一个垃圾收集器,它希望能够扫描
堆栈
中的指针到
堆
中,以了解在GC期间移动
堆
中的对象时必须重新定位哪些指针。为此,必须在
堆栈
中找到指向
堆
的所有函数参数和局部变量。现在,有一段时间,“
寄存器
”关键字意味着“如果您愿意,可以将这个变量放在
寄存器
中”,否则它就在
堆栈
上,但是现在所有的编译器(GCC、Clang、Tinyc/tcc) C编译器似乎都不管把局部变
浏览 3
提问于2015-03-08
得票数 6
回答已采纳
1
回答
在不使用分段机制的情况下,如何在x86中管理
堆栈
和
堆
段?
linux
、
linux-kernel
、
x86
、
x86-64
从理解Linux内核开始 2.6版本的Linux只在80x86体系结构需要时才使用分段。四个段
寄存器
: CS、
浏览 8
提问于2022-02-13
得票数 0
1
回答
编译器如何知道静态字段被分配到哪里?
c++
编译mymethod时,如何知道mstatic的
地址
?我知道在非静态字段的情况下,指向调用对象的指针(著名的"this")被隐式传递给该方法,因此它被用来查找
地址
,但是我们如何处理静态字段呢?
浏览 0
提问于2015-01-20
得票数 1
2
回答
Java 8中还存在方法区域吗?
java-8
、
jvm
、
jvm-hotspot
、
memory-layout
在Java 8之前,我们有5个主要的运行时数据领域: 方法区域
是
Perm Gen空间的一部分。
浏览 0
提问于2018-05-03
得票数 16
回答已采纳
3
回答
在哪里定义了内存段?
c
、
compilation
、
embedded
我刚刚了解了不同的内存片段,比如:文本、数据、
堆栈
和
堆
。我的问题
是
:2-编译器
或
操作系统如何知道哪个
地址
属于
每个部分?
浏览 3
提问于2016-12-12
得票数 4
回答已采纳
1
回答
具有偏移量的aarch64内联程序集
堆栈
指针约束内存
地址
用于Clang 6+
stack
、
clang
、
inline-assembly
、
memory-address
、
arm64
我注意到在不同的优化级别上,Clang 6有时使用ldp (load neon
寄存器
对)作为相邻的内存
地址
vld1霓虹灯加载器。 我试图使用内联程序集手动强制更多的加载对指令。源数组保存在
堆栈
中,当Clang本身生成ldp指令时,它使用带有偏移量的
堆栈
指针,但是当我输入带内联程序集的数组及其索引时,它将扩展为
地址
的x
寄存器
。然而,这一工作正在导致性能倒退。我相信这是因为读取
堆栈
更快,但是作为源
地址
的x
寄存器
可能指向
堆
浏览 1
提问于2019-04-28
得票数 0
1
回答
如何区分内存(
堆
)和
堆栈
地址
assembly
、
heap-memory
、
stack-memory
、
addressing
我的问题
是
:当我有这样的事情时,//可能
是
堆栈
上的int,因为我的代码中有一个本地的"int"-variable。当我这样做时,CPU如何知道数据在哪里:我
是
说这只是个
地址
..。如果我在2^64 - x保留了内存呢?这会发生吗?
浏览 2
提问于2012-11-13
得票数 3
1
回答
为什么火星MIPS模拟器抛出一个“来自非法
地址
的负载”异常?
assembly
、
mips
、
mars-simulator
vaddr) = 0x7fbffffc$13 (cause) = 0x00000014从status
寄存器
的前两位中,我了解到异常处理程序返回一个ADDRL异常,这意味着从非法
地址
加载。epc
寄存器
显示导致错误的指令的
地址
,即我的$sp
寄存器
的值
是
0x7fbffff8。因此,0x7fbffff8 + 0x4 = 0x7fbffffc
浏览 26
提问于2021-04-10
得票数 0
回答已采纳
4
回答
哪个
寄存器
指向
堆
?
c++
、
assembly
、
arm
、
heap-memory
如果SP
寄存器
保存下一个要放入数据的内存位置的
地址
,那么什么保存
堆
的
地址
?
浏览 0
提问于2012-08-23
得票数 4
回答已采纳
3
回答
C语言中的内存分配
c
、
memory
、
heap-memory
、
allocation
、
stack-memory
我如何检查我的
堆
、栈等位于内存的哪些部分?我目前正在查看一个用C语言编写的程序,在查看.elf文件时,我可以看到该程序正在使用的内存
地址
,但我不知道它是在
堆
中
还是
在
堆栈
中。
浏览 0
提问于2011-02-03
得票数 0
1
回答
与SP函数调用增量相关的困境
pointers
、
operating-system
、
stack
、
mips
、
function-calls
如果在函数调用期间推,为什么
堆栈
指针移动到一个较小的值,减去4倍的
寄存器
被推到
堆栈
上? 我读的时候收到了这个
浏览 3
提问于2015-07-13
得票数 1
回答已采纳
2
回答
ASM
堆栈
使用情况
c++
、
c
、
assembly
、
inline-assembly
据我所知,
堆栈
可以用来存储数据,当你需要实现函数
或
只是运行完
寄存器
来使用。我的问题
是
通常使用的
堆栈
是
哪一块内存。我得到的印象是,这取决于预取过程和其他因素。另外,在什么时候
堆栈
被加载回RAM中。
浏览 0
提问于2012-01-06
得票数 0
回答已采纳
点击加载更多
相关
资讯
Java Jvm虚拟机的内存模型概述
关于堆栈的深入理解
指令的功能分类
程序是怎样被电脑所读懂的?
嵌入式软件错误的五个主要原因
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
智聆口语评测
活动推荐
运营活动
广告
关闭
领券