腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(5461)
视频
沙龙
1
回答
LDR
指令
未
对齐
使用
错误
-
CortexM7
、
、
、
、
我正在调试为
CortexM7
目标编写的汇编代码。在busFault处理程序中,有一条
LDR
指令
,当执行该
指令
时,会导致非
对齐
使用
错误
,并因此发生强制硬
错误
。我所知道的是,默认情况下,
ldr
指令
没有地址
对齐
要求。我还检查了CCR寄存器中的位,它可以强制执行要求,但它被禁用。以下是我的代码: global c_AbcFunction c_Abc .long c_AbcF
浏览 125
提问于2019-06-18
得票数 2
2
回答
ARM Cortex M7非
对齐
存取与记忆
、
、
、
、
我正在
使用
GCC为一个Cortex M7编译这个代码:void write_test_plain(uint8_t * ptr, uint32_t value)800032c: 4ac4
ldr
; (8000640 <main+0x3a0>) 800032e: 923b str r2,
浏览 0
提问于2018-06-14
得票数 7
回答已采纳
2
回答
未
对齐
的访问在ARM Cortex-M4上导致
错误
、
、
、
、
我有一个对象,其地址不是4字节
对齐
的。当存在保存2个寄存器的STR
指令
时,这会在中央处理器中导致HardFault
错误
。R3 2FCC R11 0 R5 20007630 R13 2000CB38 如图所示,STR
指令
的目标寄存器未在4字节上
对齐
。
指令
STR r2, [r0, #4]执行得很好。但它会在下一个STRD r3, r1, [r4, #8]上HardFaults。如
浏览 5
提问于2013-08-16
得票数 9
回答已采纳
2
回答
指示
未
对齐
访问Clang以实现ARM兼容性
、
、
、
文件格式
使用
压缩结构,因此我不能保证字段将与单词边界
对齐
。
ldr
r2, [r0, #20]ldrdeq r2, r3, [r0, #20] 不幸的是,LDRD总是生成
对齐
错误
(根据规范和实践)。这也有可能是
浏览 2
提问于2012-02-08
得票数 3
1
回答
aarch64
指令
编码中是否有
未
使用
的位?
根据这个关于
指令
编码的aarch64,在一些
指令
中有
未
使用
的位,比如下面的
LDR
指令
列表中的x。但是我在armv8手册中有任何关于
未
使用
的位的文档。根据armv8手册,这些
未
使用
的位有效吗?xxx1 1101 x1ii iiii iiii iinn
ldr
Ft ADDR_UIMM12
浏览 0
提问于2018-01-04
得票数 1
回答已采纳
2
回答
为什么我有一个
未
对齐
的内存访问
错误
?[皮质M4]
我正在调试一段代码,它
使用
Keil的编译器而不是ARM-GCC造成了一些崩溃。我不熟悉代码的历史,但随着我阅读更多,我意识到代码中至少存在严格的别名冲突。但是,在运行此代码段时,将我引向代码的
错误
首先是一个
未
对齐
的访问
错误
。 我很不好意思地承认,我并不很清楚这种严格的别名违规的问题,我想说服自己,解决这个问题,而不仅仅是掩盖任何导致不一致
错误
的东西。能帮我理解为什么我会看到
未
对齐
的访问
错误
吗?这与严格的别名冲突有关吗?如果是的话,它是
浏览 5
提问于2020-01-04
得票数 2
回答已采纳
2
回答
将内容从内存位置读取到寄存器
、
、
、
例如:
使用
LDR
指令
0x10002432到寄存器r0。但它不起作用。 关于如何从特定内存位置读取值的任何建议。
浏览 0
提问于2020-12-17
得票数 2
2
回答
无法用
LDR
替换MOVW / MOVT
、
、
我想用一条
ldr
指令
替换这个movw / movt组合:movt r0, #0x4002 V Disassembly of section .text: 0: 4810
ldr
浏览 18
提问于2021-11-16
得票数 1
1
回答
当在页面
错误
处理程序中启用中断或具有抢占式调度时,ARM内核Oops
、
、
、
、
您能在页面
错误
处理程序中启用中断吗?是否存在先发制人调度的ARM内核争用? 我在UDP中
使用
CONFIG_PREEMPT接收代码,或者在故障处理程序中启用中断时,我获得了ARM内核oops。这是在内核2.6.39上
使用
ARM的已知问题吗?通过抢占调度,我在很长一段时间后也看到了jffs2中的问题,但preempt_voluntary却没有问题。编辑:页面
错误
处理程序中的oops不是第一个失败。在进程
对齐
处理程序中有一个"do_bad_area“。随后,对
未
对齐
浏览 0
提问于2013-05-21
得票数 1
2
回答
Printf在寄存器、ARM程序集中更改值
、
、
首先,在寄存器r1中加载的元素是
错误
的(当它应该是7时,它加载0 )。然后,在
使用
"printf“函数之后,当我
使用
GDB读取寄存器值时,许多寄存器会得到其他不应该更改的值,因为我没有修改它们,所以只
使用
了"printf”。为什么"printf“会影响这些值。我在想些关于
对齐
的事情。我不确定我是否正确地
使用
了
指令
。#8 bl imprime .align
浏览 3
提问于2013-10-14
得票数 2
回答已采纳
1
回答
arm装配速度ldm和
ldr
、
我正在编写arm程序集代码,我想将两个32位数据加载到寄存器中,有两个
指令
我可以
使用
,2.
ldr
r1, [r0]!我想知道哪个更快
浏览 3
提问于2013-11-25
得票数 1
回答已采纳
2
回答
在编写干净的C代码时利用ARM
未
对齐
内存访问的优势
、
、
过去,ARM处理器无法正确处理
未
对齐
内存访问(ARMv5和更低版本)。如果u32 var32 = *(u32*)ptr;没有在4字节上正确地
对齐
,ptr就会失败(引发异常)。ARMv7还支持一些新的“加载多重”(LDM)和“存储多重”(STM)操作码,这需要指针
对齐
。 那是什么意思?嗯,编译器可以自由地
使用
这些高级
指令
,即使它们不是从C代码中专门调用的(没有内在的)。这意味着,即使在支持
未
对齐
内存访问的CPU上,直接
使用
u32访问现在
浏览 4
提问于2015-08-18
得票数 34
回答已采纳
2
回答
ARMv7 4/5/6代码的哪些部分不能在ARMv7上工作?
、
、
、
、
据我所知,ARMv7处理器(如Cortex-A9 )大多是向后兼容的,与旧版本的ARM架构版本的代码兼容。但是,例如,我读过关于的报告。
浏览 2
提问于2013-10-26
得票数 8
回答已采纳
1
回答
启用“本机代码调试”会在Outlook外接程序中引发ntdll.dll异常
、
、
、
、
Project \ debug \Debugger engines“中为我的VSTO Addin启用选项”启用本机代码调试“,但是当我启用它并启动VSTO Addin调试它时,会抛出一些与ntdll.dll相关的
错误
消息
浏览 6
提问于2022-02-04
得票数 0
1
回答
如何防止Atmel Studio gcc 6.3.1将4字节memcmp()优化为4字节直接比较?
、
、
、
、
在
使用
-Os优化大小或
使用
-O3进行最大优化时,编译器将memcmp()调用替换为直接的4字节比较(通过检查反汇编验证)。不幸的是,优化有时也会将本地4字节数组移动到
未
对齐
的起始地址,因此尽管memcmp()可以正常工作,但直接比较会由于
未
对齐
的访问而触发HardFault。在我看来,这是一个100%的编译器优化
错误
(可能是gcc,可能是Atmel添加的东西),但是我仍然坚持
使用
提供的编译器,所以更新不是一种选择。否则,我不得不强迫本地的4字节数组<e
浏览 7
提问于2020-02-28
得票数 1
回答已采纳
2
回答
如何在arm v7中引起数据中断和地籍中止
、
、
我不
使用
任何操作系统,工作启动代码。
浏览 2
提问于2017-05-09
得票数 1
回答已采纳
2
回答
手臂打高尔夫球技巧
、
、
因为ARM是2021年7月的LoTM,我想我应该创建提示线程。每个答案只有一个提示,没有像“哦删除评论和空格”这样愚蠢的提示。
浏览 0
提问于2021-07-01
得票数 10
3
回答
为什么这种EXC_BAD_ACCESS会发生在long long而不是int?
、
、
、
test_alignment<long double>(); // fails on iPhone device} tmp += sizeof(unsigned short); 但是测试代码对于int和其他人来说执行得很好检查每种数据类型的大小和
对齐
方式后发现,失败
浏览 2
提问于2010-07-14
得票数 4
回答已采纳
3
回答
ARM v8中的LDUR和STUR
、
、
我上过几门关于ARMv8汇编的课程,但两位老师都以不同的方式描述了LDUR/STUR
指令
,现在我已经完全迷失了方向。有人能帮我澄清一下吗?
浏览 3
提问于2018-10-19
得票数 11
1
回答
检查SCTLR的内容
我遇到过这样一个事实: Arm V7 ISA支持某些加载和存储
指令
的
未
对齐
内存访问,SCTLR中的A位控制尝试
未
对齐
访问时是否引发
对齐
错误
.I想知道什么
指令
可用于写入或读取SCTLR .I found
浏览 6
提问于2013-07-03
得票数 3
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
嵌入式系统开发学习:20 ARM伪指令
嵌入式系统开发学习:20-1 ARM汇编程序设计
关于结构体对齐问题
u-boot 启动内幕
全新的选择:Misaligned Concentric Mates
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
腾讯会议
活动推荐
运营活动
广告
关闭
领券