作业帮 > 数学 > 作业

西门子..L P#400.0T #pCM_offset_Local//计算寻址的地址L #intCM_NumberL 5

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/07/14 23:27:56
西门子..
L P#400.0
T #pCM_offset_Local
//计算寻址的地址
L #intCM_Number
L 50
*I
L 50
-I
T #pCM_offset_DBCM
L 0
>=I
JC M001
T #pCM_offset_DBCM
M001:L P#0.0
L #pCM_offset_DBCM
SLD 3
+D
T #pCM_offset_DBCM
//打开相应的DB
L #intUnitNumber
T #CM_DB
OPN DB [#CM_DB]
L 12
T001:T #CYC_TM
L DBD [#pCM_offset_DBCM]
T MD [#pCM_offset_Local]
L #pCM_offset_DBCM
L P#4.0
+D
T #pCM_offset_DBCM
L #pCM_offset_Local
L P#4.0
+D
T #pCM_offset_Local
L #CYC_TM
LOOP T001
邮件是你发给我的吗\?
L P#400.0 .//将偏移量400.0装载
T #pCM_offset_Local //传送到本地局部变量名为#pCM_offset_Local内计算寻址的地址
L #intCM_Number //装载本地局部变量名为#intCM_Number的变量
L 50 //将整形数值50装载
*I //相乘,乘积放入ACU1(上次解释过ACU1了这次不解释了)
L 50 //将整形数值50装载
-I //ACU1减去50
T #pCM_offset_DBCM ////ACU1减去50的值传送到本地局部变量名为#pCM_offset_DBCM 的变量
L 0 //将整形数值0装载
>=I //#pCM_offset_DBCM的值与0作比较
JC M001 //如果大于等于0,跳转子程序到M001
T #pCM_offset_DBCM
M001:L P#0.0 .//将数值0.0装载
L #pCM_offset_DBCM //#pCM_offset_DBCM装载
SLD 3 //双字左移
+D //将2个双整形数值相加
T #pCM_offset_DBCM //装载入#pCM_offset_DBCM
//打开相应的DB
L #intUnitNumber //装载本地局部变量名为#intUnitNumber的变量(这个是DB号)
T #CM_DB //传送到被命名为#CM_DB号地址内
OPN DB [#CM_DB] //打开这个DB块
L 12 //装载整形数12
T001:T #CYC_TM //传送到被命名为#CYC_TM本地变量内
L DBD [#pCM_offset_DBCM] //装载名为#pCM_offset_DBCM的变量,DBD通常是在本地FB中的缩写,如果上述的#intUnitNumber值是1的话,那么这个地址也可以写成DB1.DBD[#pCM_offset_DBCM]
T MD [#pCM_offset_Local] //传送到变量MD [#pCM_offset_Local]
L #pCM_offset_DBCM //装载变量#pCM_offset_DBCM
L P#4.0 //装载4.0偏移量
+D //相加
T #pCM_offset_DBCM //传送到变量#pCM_offset_DBCM
L #pCM_offset_Local //装载变量#pCM_offset_Local
L P#4.0 //装载4.0偏移量
+D //相加
T #pCM_offset_Local //传送到变量#pCM_offset_Local
L #CYC_TM //装载变量#CYC_TM(循环)
LOOP T001 //跳转到T001,循环指令
再问: 是的