关于指针的理解与应用

200里的指针我应该如何去理解它,我在答案里也看过各种各样的链接与回答,但小弟我愚钝,还请大侠们不吝赐教!
  什么是指什?比如:&VB100表示的是什么意思,它表示的是一个指针呢,还是什么操作数或者变量之类的还是地址之类的。
  *VB100表示的是什么呢,是指针还是其它之类的。
  昨天问了一群的群主:它给我这样回答的:&VB100表示VB100存的地址处的值。
  *VB100则表示VB100存的地址
我可不可以理解成:*VB100里存的地址的值,&VB100表示里面存的是地址
这样的理解对吗?
感觉这两者之间好像是成互逆应用的,大侠们,教教我吧!用最简单的语言!

  谢谢谢谢谢谢谢谢了!
&VB100里面存的

最佳答案

看看下面的转帖:

在S7-200中难道不能直接把VB200传送到AC0吗? 

答:可以。影响不大。

如果VB200=12,执行MOVB &VB200,AC1,MOVB *AC1 , AC0
后AC0的内容是什么?

答:AC0=12。问题不大。

从这个简单的问题上可以看出来没有什么区别,其实很大的分支的。你要知道指针地址和使用指针就有点区别了。

   MOVB &VB200,AC1
      MOVB *AC1 , AC0
 这两条指令的作用应该是等同于:
   MOVB VB200,AC0

也可以用MOVD  $VB200,AC0。但是如果用MOVD  VB200,AC0这个就是错误。另外MOVD   VD200,AC0这个是正确的。

MOVB &VB200,AC1 把VB200的地址(VB200的起始地址)作为指针存入AC1。


 MOVB *AC1 , AC0将AC1所指向的字节(VB201)的值送入到AC0。

这里显然可以看出两种不同的地址。


具体可以参考一下《S7-200系统手册》内容在第四章,PLC的基本概念。


文档连接:

http://www.ad.siemens.com.cn/download/DocList.aspx?TypeId=1&CatFirst=1&CatSecond=2&CatThird=-1


1109582  S7-200可编程控制器系统手册 

回答者:  莘莘学子 - 初级工程师  第9级  2011-2-26 20:01

参考:
s7-200的寻址问题
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=64914_1028.html
参考资料:http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=64914_1028.html

提问者对于答案的评价:
谢谢,不错

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc309500.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐