回复:关于ANY指针的一点疑问

RENHQ

西门子1847工业学习平台

  • 帖子

    13657
  • 精华

    61
  • 被关注

    2166

论坛等级:至圣

注册时间:2008-12-28

钻石 钻石 如何晋级?

发布于 2017-02-18 14:14:29

15楼

展开查看
以下是引用20151013在2017-02-18 13:57:27的发言 >13楼

“这个指针刚开始指的是V区域”   确实是这样啊

但是如果是T LB[AR1,P#0.0]  多了个L,本来[AR1,P#0.0]指向的是V区(即OB1的TEMP ),你多加了个L(因此条语句处于FC1中,L指的是FC1的TEMP),而你上面又说外面的存储区(这里是L)会覆盖[]里的存储区,那最后不是成了指向FC1的TEMP了吗?但其实是应该指向OB1的TEMP

我看看我描述的哪里有问题吗。。?

以下是引用RENHQ在2017-02-18 13:46:37的发言 >12楼:又弄蒙了这个指针刚...

引用12楼详细内容:

又弄蒙了

这个指针刚开始指的是V区域....

以下是引用20151013在2017-02-18 12:43:47的发言 >:那按你这样说的话T...

引用详细内容:

那按你这样说的话T LB[AR1,P#0.0]这条指令CPU操作系统是如何识别这个“L”到底是被调用块(例如FC)中的临时局部变量(TEMP)还是调用块(例如OB1)里的局部临时变量?

即AR1里地址指向的是OB1中的TEMP,而如果按你说的如果系统将“L”识别为FC的TEMP,那岂不是错了吗?

这个L区域,程序在哪个块里面用,值得就是哪里的,虽然OB1也调用FC1,指的还是FC1里面的,不是OB1的

怎么感觉越说越乱了呢...

看看手册介绍吧;

SIMATIC 用STEP 7 V5.5 编程 手册

https://support.industry.siemens.com/cs/cn/zh/view/45531107


574页 27.2.3.3  局部数据堆栈 


Q群:https://jq.qq.com/?k=9BDuEgf6
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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