登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:无法理解MBus_Msg里的指针&VB1000

点击:8052 回复:10

&VB1000就指向VB1000。
间址的指针是个双整数,如&VB1000就是一个双整数,其值=&VB0 + 1000,&VB0为V区的基地址。
比如:
http://www.ad.siemens.com.cn/club/bbs/upload/image/20161003/6361108022652515358139133.JPG
这样,把&VB1000送给VD100,也就是VD100存的是VB1000的地址。此时VD100可以用来作间址寻址的指针。
http://www.ad.siemens.com.cn/club/bbs/upload/image/20161003/6361108043347532233513560.JPG
这一句,把由VD100指向的一个整型变量,送到VW200。上一句已经把VB1000的地址存在VD100中了,所以VD100指向的地址是VW1000。怎么变成VW1000了呢。因为VB1000和VW1000的起始址都是VB1000。*VD100意思就是指VD100指向的变值的值,变量值的类型,由指令码决定,如这一句是MOV_W,操作WORD,那么*VD100得到的是一个WORD。
http://www.ad.siemens.com.cn/club/bbs/upload/image/20161003/6361108098432610999688900.JPG
而这一种呢,叫做直接寻址,直接给出了VW1000。VW1000形式上是个地址,意思是取这个地址里面的值。
16-10-05 15:16

上一页 上一页

工控新闻

更多新闻资讯