西门子200 smart 寻址的疑问

ADD指令 IN1和IN2前加*是什么意思?

还有有的寻址前加&又是什么意思?

IN2前的Pointer和Average等又是什么意思?

西门子200 smart 寻址的疑问

1、用 “&” 符号加上要访问的存储区地址建立一个指针。它的内容是一个存储单元的物理地址,指针总是 32 位的。比如你的程序中 VD4就是一个指针;

操作数前加上“*”号,表示“*”号后面的这个操作数是一个指针,即是指向一个存储单元的地址,加上“*”号后,则表示引用存储在这个存储单元中的内容,至于是要引用字节、字、还是双字的值,则取决于你使用的指令。

2、IN2前的Pointer和Average等又是什么意思?

图中前面一个指令是做累加和的

累加和计算完后,后面一个指令是用来移动指针的,该指令是将Pointer:VD4 +2,这是因为你做累加的指令是整数加法,整数占用 2 个存储单元,要移到下一个整数所在的存储单元则指针要加 2。


分享到:


相關文章: