恭喜,你发布的帖子
发布于 2023-02-13 13:12:17
20楼
下面是刚刚的实验情况:
I1.0分两次读取使用,编译通过,没有问题。
转成STL如下:
LD Always_On:SM0.0
= L60.0
LD I1.0 // 第一次读取
A I0.0
= L63.7
LD I1.0 // 第二次读取
A I0.1
= L63.6
LD I0.2
= L63.5
LD I0.3
= L63.4
LD L60.0
CALL SBR_0:SBR0, L63.7, L63.6, L63.5, L63.4
但是,下面这一段,编译通不过:
程序段 1:错误 47: 程序段无效,或者程序段过于复杂,无法编译.
其实,逻辑意义非常清楚,就是,I1.0读取一次,两次使用。
编译通不过,无法直接转成STL。
手工转换成以下等效的程序:
LD Always_On:SM0.0
= L60.0
LD I1.0 // 第一次读取
LPS // 压栈,以备二次使用
A I0.0
= L63.7
LPP // I1.0出栈
A I1.0 // 第二次使用
A I0.1
= L63.6
LD I0.2
= L63.5
LD I0.3
= L63.4
LD L60.0
CALL SBR_0:SBR0, L63.7, L63.6, L63.5, L63.4
请填写推广理由:
分享
只看
楼主