gpt4 book ai didi

c - 变量 .BSS 部分

转载 作者:太空宇宙 更新时间:2023-11-04 02:09:54 25 4
gpt4 key购买 nike

BSS 部分包含未初始化的变量。

第一个问题:他们被分配后会留在那里吗?

第二个问题:我想在外部 SDRAM 中加载此部分。变量正确地位于内存映射中,但充满了奇怪的值,我无法将任何其他数字存储到其中。你知道这个问题吗?

/* Memory Map                                                                 */
MEMORY{
VECTORS (X) : origin=0x00000000 length=0x00000020
FLASH0 (RX) : origin=0x00000020 length=0x0017FFE0
FLASH1 (RX) : origin=0x00180000 length=0x00180000
STACKS (RW) : origin=0x08000000 length=0x00001500
RAM (RW) : origin=0x08001500 length=0x0003EB00
SDRAM (RW) : origin=0x80000000 length=0x00800000
}

/*----------------------------------------------------------------------------*/
/* Section Configuration */
SECTIONS{
.intvecs : {} > VECTORS
.text : {} > FLASH0 | FLASH1
.const : {} > FLASH0 | FLASH1
.cinit : {} > FLASH0 | FLASH1
.pinit : {} > FLASH0 | FLASH1
.bss : {} > SDRAM
.data : {} > RAM
.sysmem : {} > RAM
}

最佳答案

关于 Q2,您必须确保您的 SDRAM 内存 Controller 使用正确的时序和内存设备的映射正确初始化,.bss 段由运行时启动初始化为零之前-上代码。您还必须确保您的运行时启动代码在位于 SDRAM 中时明确初始化 .bss 段。

关于c - 变量 .BSS 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15549321/

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