回复:求教间接寻址的用法和作用

yanxiao

版主

  • 帖子

    12300
  • 精华

    49
  • 被关注

    191

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2012-06-24 23:33:56

4楼

大概计算机都差不多:
1、VB0,本身是变量的一个符号,但它关联着两个东西:一是变量的地址,另一个是这个地址里存的值。
当你直接用VB0时,实际上是操作VB0中存的值,而地址(VB0)采用直接给出的方式,写在了指令中,程序运行时不再变化。
2、在S7200,表示一个变量的地址(比如VB0)是一个32位的数, 可以直接把这个数当作一个值来操作,比如movd &vb0,VD84,就是把这个VB0的地址存进VD84中,仅此而异,延伸的意义你自已去想象。
3、对VD84里面值的操作,比如加减,仅仅是一个数值操作。至于目的和意义,编程者明白,PLC并不清楚,不能指望PLC明白在做地址的增减。
4、把VD84当作指针,是体现在*VD84这个寻址方法上,意思为要操作的对象(值)是存放在以VD84中的值为地址的那个单元中,VD84中是否存在有效的地址(代表变量地址的一个数),由编程者保证,要指向合法的地址址范围,不能指向天宫X号,那样的话就出错了。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33291条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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