鄙人刚下学不久,看程序中&和*不太懂?! 点击:529 | 回复:6



初出——茅庐

    
  • 精华:0帖
  • 求助:7帖
  • 帖子:14帖 | 100回
  • 年度积分:35
  • 历史总积分:296
  • 注册:2012年5月13日
发表于:2014-02-18 15:47:12
楼主

鄙人才下学不久,看西门子程序中&和*不太懂?!

想请各位大侠教教我?!    小弟在此先谢过各位了!




秦君_1

  • 精华:8帖
  • 求助:22帖
  • 帖子:148帖 | 4867回
  • 年度积分:1651
  • 历史总积分:39896
  • 注册:2005年6月28日
发表于:2014-02-18 16:05:31
1楼

间接编址
间接编址使用指针存取内存中的数据。指针是包含另一个内存位置地址的双字内存位置。您只能将V内存位置、L内存位置或累加器寄存器(AC1、AC2、AC3)用作指针。欲建立指针,您必须使用"移动双字"指令,将间接编址内存位置移至指针位置。指针还可以作为参数传递至子程序。

S7-200允许指针存取以下内存区:I、Q、V、M、S、T*仅限当前值)和C(仅限当前值)。您不能使用间接编址存取单个位或存取AI、AQ、HC、SM或内存区。

欲间接存取内存区数据,输入一个"和"符号(&)和需要编址的内存位置,建立一个该位置的指针。指令的输入操作数前必须有一个"和"符号(&),表示内存位置的地址(而并非内存位置的内容)将被移入在指令输出操作数中识别的位置(指针)。

在指令操作数前面输入一个星号(*)指定该操作数是一个指针。如下图所示,输入*AC1指定AC1是"移动字"(MOVW)指令引用的字长度数值的指针。在该范例中,在VB200和VB201中存储的数值被移至累加器AC0。

200编程软件帮助中就有。

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 455回
  • 年度积分:0
  • 历史总积分:1000
  • 注册:2008年1月09日
发表于:2014-02-18 19:36:45
2楼

学工控的一般都学过C语言,&取变量地址,*就是取指针对应的数据

研讨会宣传员_3259

  • [版主]
  • 精华:3帖
  • 求助:110帖
  • 帖子:1927帖 | 14403回
  • 年度积分:102
  • 历史总积分:64749
  • 注册:2020年3月27日
发表于:2014-02-18 21:50:50
3楼

C语言,&取变量地址,*就是取指针对应的数据

邵-王者之师

  • 精华:1帖
  • 求助:39帖
  • 帖子:81帖 | 861回
  • 年度积分:0
  • 历史总积分:2844
  • 注册:2011年3月24日
发表于:2014-02-19 00:13:54
4楼

&是指针&VB100,现在指针就指在VB100上。

*VD200是指针的地址。

是这样的吧,描述不太清楚,请参照一楼大神

初出——茅庐

  • 精华:0帖
  • 求助:7帖
  • 帖子:14帖 | 100回
  • 年度积分:35
  • 历史总积分:296
  • 注册:2012年5月13日
发表于:2014-02-19 09:32:43
5楼

回复内容:

对: 秦君_1  间接编址间接编址使用指针存取内存中的数据。指针是包含另... 内容的回复!


太谢谢你了?!

受益学习中···

阿水--王者之师

  • 精华:25帖
  • 求助:348帖
  • 帖子:1617帖 | 22281回
  • 年度积分:37
  • 历史总积分:98482
  • 注册:2007年3月22日
发表于:2014-02-19 13:49:51
6楼

引用 秦君_1 的回复内容: 间接编址间接编址使用指针存取内存中的数据。指针是包含另...



 

太谢谢你了?!

受益学习中···



热门招聘
相关主题

官方公众号

智造工程师