回复:关于有临时变量的fc,被别的程序打断,会出现的问题?

小釉

  • 帖子

    2758
  • 精华

    26
  • 被关注

    62

论坛等级:至圣

注册时间:2011-05-12

钻石 钻石 如何晋级?

发布于 2012-02-22 09:15:06

2楼

quote:以下是引用划痕在2012-02-22 09:04:31的发言:
quote:以下是引用小釉在2012-02-22 08:13:21的发言:
在fc中,如果一个程序中带有临时变量,在临时变量还没有赋值给其他变量之前,被高优先级的程序打断后,在划红线的地方被高优先级的程序打断,高优先级程序执行完以后,重新调用fc的话,会不会出现临时变量重新赋值的情况呢?还是临时变量在中断后,先压入堆栈呢。


不会出现历史变量重新赋初值的情况,前提是满足系统要求的嵌套层级。因为在中断程序执行之前会将临时数据压入到相应的堆栈区,保护起来(堆栈区的长度一般都能满足要求的),等到中断完成后再出栈即可。

谢谢,是根据程序使用的情况来选择压入堆栈,还是把所有的临时变量都压入进去?
是不是因为这样,所以老的版本临时变量的数量不是很多,受到堆栈的影响吗?
是不是就
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。