如何填充未使用的程序存储器

2020-02-08 09:26发布

怕程序跑飞,所以想把没使用的程序存储器空间填充,可是怎么填啊?高手指点!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
13条回答
xfdr
2020-02-09 22:28
回复【7楼】youmcu  
fill   指定程序存储器填充值
    fill 伪指令可以将已知的数据强制连续自动填充到未用的程序存储器空间,被填充的可以是一个立即数,配合( )也可以是一条汇编指令。例:
    fill    0x08,5                          ;从当前地址开始连续5个空间填为0x08数据
    fill    (goto    main),.12      ;从当前地址开始连续12个空间填为goto  main指令
    源程序的长度一般不可能刚好与芯片的空间相等,所以都有一些程序空间没有被写上具体的指令代码(空白处),在单片机正常运行时这些地方是不会被执行到的。但在有干扰等的情况下程序跑飞正好落在这些非法指令处时,就有必要设置软件陷阱捕捉这些非法跳转,让程序恢复正常运行。例:
    fill    (goto  $),next-$        ;从当前地址开始到标号ne......
-----------------------------------------------------------------------

回复【7楼】youmcu  
-----------------------------------------------------------------------
非常感谢,学习了。

一周热门 更多>