你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何理解DCD指令【悬赏问答】

[复制链接]
飞翔的鸡 提问时间:2012-7-11 11:17 /
   dcd指令可以一片连续的空间,并初始化?
   
   问题1:
   那么这块空间在哪?
   例如:
“标签+dcd+表达式(常数)”
   所分配的空间的位置写在了哪里?
   问题2:
   在M3系列的startup.s 文件当中,所有的中断函数都进行了DCD,这样有什么用?为什么要这么做
   比如
“     DCD UserCodeArea
     DCD SystemUndefinedHandler
     DCD SystemSwiHandler
     DCD SystemPrefetchHandler
     DCD SystemAbortHandler
     DCD SystemReserv
     DCD SystemIrqHandler
     DCD SystemFiqHandler

   其意义是什么
为什么中断函数需要这样子声明,而普通的函数却不需要呢?(起码不写在startup里面)
   问题3:
   在建立堆栈的时候:“
FiqStackSpace SPACE FIQ_Stack_Legth  
FiqStack DCD FiqStackSpace + FIQ_Stack_Legth

   这里使用dcd指令有什么用,指明栈顶的位置?
收藏 评论6 发布时间:2012-7-11 11:17

举报

6个回答
yjwpm 回答时间:2012-7-11 11:26:16

RE:如何理解DCD指令

DCD伪汇编代码的含义 DCD(或DCDU)
语法格式:
标号 DCD(或DCDU) 表达式
DCD(或DCDU)伪指令用于分配一片连续的字存储单元并用伪指令中指定的表达式初始化。其中,表达式可以为程序标号或数字表达式。DCD也可用“&”代替。
用DCD分配的字存储单元是字对齐的,而用DCDU分配的字存储单元并不严格字对齐。
使用示例:
DataTest DCD 4,5,6 ;分配一片连续的字存储单元并初始化。
飞翔的鸡 回答时间:2012-7-11 11:31:26

RE:如何理解DCD指令

那么,所分配的那个连续的储存空间在哪?
如何访问?
为什么要dcd中断函数的入口
飞翔的鸡 回答时间:2012-7-11 11:39:57

RE:如何理解DCD指令

顶起啊,这个东西极端不清楚
shahexu 回答时间:2012-7-17 10:00:19

RE:如何理解DCD指令【悬赏问答】

在中断向量表中不直接LDR PC,"异常地址".而是使用一个标号,然后再在后面使用DCD定义这个标号,其原因是:
LDR 指令只能跳到当前PC 4kB 范围内,而B 指令能跳转到32MB 范围,而现在这样在LDR PC, "xxxx"这条指令不远处用"xxxx"DCD 定义一个字,而这
个字里面存放最终异常服务程序的地址,这样可以实现4GB 全范围跳转。
mikeliujia 回答时间:2012-7-19 21:58:22

RE:如何理解DCD指令【悬赏问答】

1.DCD伪指令用于分配一片连续的字存储单元并用伪指令中指定的表达式初始化,也就是对地址写值。感觉是申请了一段RAM空间
2.在中断向量表中不直接LDR PC,"异常地址".而是使用一个标号,然后再在后面使用DCD定义这个标号,其原因是:LDR 指令只能跳到当前PC 4kB 范围内,而B 指令能跳转到32MB 范围,而在LDR PC, "xxxx"这条指令不远处用"xxxx"DCD 定义一个字,这个字里面存放最终异常服务程序的地址,这样可以实现4GB 全范围跳转。
3.FiqStackSpace是标号,相当与地址,实际上就是在FiqStackSpace SPACE FIQ_Stack_Legth 这个语句给分配的空间的首地址(如SPACE从 0x31000000开始,那么标号就是0x31000000),FiqStackSpace+ FIQ_Stack_Legth 是这个地址空间的结束地址,将FiqStack指向这个地址,当做栈的顶部,该栈向下生长,长度FIQ_Stack_Legth
mr.hs 回答时间:2015-1-15 22:17:07
1这块区域地址为当前pc值(一次性分配一个字)
2通过标号(在这里定义成了中断向量)来写入中断向量到中断服务函数的跳转指令

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版