恭喜,你发布的帖子
发布于 2023-07-12 18:03:24
1楼
两者的间接寻址本质上有区别。
三菱是一个偏移。主体是什么就偏移什么。是一个相对量。smart是一个地址。是一个绝对量。相对量需要主体依附。绝对量可以独立存在,意义不变。
三菱的V是一个主体参数的偏移。把V放在地址后面就使地址发生偏移。把V放在常数后面,常数就发生变化。
smart的间接寻址是地址看成一个某32位的整数数值,间接寻址把这个整数进行加减就达成这个地址的变化。
三菱:
MOV K3 V0
MOV K100 D10V0
执行完后D13就有100这个值。
smart:
MOVD &VB13 VD4
MOVB 100 *VD4
前一行。&符号把VB13看成一个某整数,传入VD4。VD4成了一个指针(至于真实是什么整数,可以不用理会。知道VD4是装着这个数就可以了。知道这个整数可以翻译成VB13就可以了。)
后一行。把100写入到VD4指向的地址。(此时有星号把VD4看成是一个记录住地址的东西,里面的数值并不可看成是某整数。plc会自己翻译成地址。)
三菱可以通过对这个V进行加减运算,上述程序可以寻址到其他同区域的目的地。
smart可以通过对这个VD4进行加减运算,上述程序可以寻址到其他目的地。(甚至不同区域)
三菱有有限量的V和Z装载偏移,smart无限制数量装载地址。
三菱可以选择使用16位/32位装载寻址偏移。smart只能用双字装载地址。
三菱区分16位/32位指令使用VZ自动组合。smart没有限定指令位长使用同一个指针。
三菱可以对位和常数偏移。smart不可寻址到位,不可操作常数。
请填写推广理由:
分享
只看
楼主