以下是引用Letham在2019-01-08 11:29:41的发言 >17楼:
以前在300/400 平台上 SCL编写的程序 ,在没有源代码的情况下,可以转换成STL,可以很清楚的看出SCL 编写的程序 在转换成机器码时 会有很多不需要的代码。
看下面,是SCL编写的程序块,在没有源代码的情况下,转换成STL的情况
SET
SAVE
= L 0.1
L DB855.DBD 12
T LD 2
OPN DI 845
L DID 1024
T LD 6
UC "DIV_R"
P#L 2.0
P#L 6.0
P#L 10.0
L LD 10
T DID 0
A BR
= DB844.DBX 1.4
SET
SAVE
= L 0.1
以上三句 大家在自己编程的时候 是否会这样干,先把BR位保存到L0.1里?
其实以上代码就是如下
CALL "DIV_R"
IN1 :=DB855.DBD12
IN2 :=DB845.DBD1024
OUT :=DB845.DBD0
A BR
= DB844.DBX1.4
不过 从SCL转换成的STL代码里,可以看出更深层次东西,比如实参到形参的参数传递到底怎么来进行的。