ARM7TDMI(ARMv4T)中大端格式数据加载规则及实例疑问
ARM7大端模式下LDR全字加载结果:0xFACE0000
已知条件
内存大端配置下,0xBABEFACE的存储分布:
0x400 - BA 0x401 - BE 0x402 - FA 0x403 - CE
执行指令LDR R3, 0x402(从0x402开始加载32位全字),且0x402以外的内存数据均为0。
关键规则
ARM7的大端模式(BE-32)遵循:内存地址递增方向的字节,对应寄存器32位数据的高字节到低字节——即最低内存地址存储数据的最高有效字节,最高内存地址存储数据的最低有效字节。
结果推导
从0x402开始的4个连续字节为:
0x402:0xFA(对应寄存器bit31-24)0x403:0xCE(对应寄存器bit23-16)0x404:0x00(对应寄存器bit15-8)0x405:0x00(对应寄存器bit7-0)
按顺序组合后,R3中的数据为 0xFACE0000。
内容的提问来源于stack exchange,提问作者Arnav Garg
相关产品推荐
相关产品推荐

