发布于 2006-08-22 09:47:19
0楼
下面是一个对数据块的一段进行至一个特定值得函数块:
希望能推大家的编成有参考价值
nw1: 临时存储地址寄存器内容
TAR1
T #Ar1_log
//
TAR2
T #Ar2_log
nw2:判断要填充的数据格式,并且把他们化成字节格式进行处理
L P##Data_area
LAR1
//
L B [AR1,P#1.0] // Typ
L 2 // Byte
==I
JC AnzB
//
TAK
L 4 // Word
==I
JC AnzW
//
TAK
L 5 // INT
==I
JC AnzW
//
TAK
L 6 // Dword
==I
JC AnzD
//
TAK
L 7 // Dint
==I
JC AnzD
JU Feh1
//
AnzB: L W [AR1,P#2.0] // Anzahl
JU Schl
//
AnzW: L W [AR1,P#2.0] // Anzahl
L 2
*I
JU Schl
//
AnzD: L W [AR1,P#2.0] // Anzahl
L 4
*I
Schl: T #nums_bytes
L 0
==I
JC Feh1
//
L W [AR1,P#4.0] // Datenbaustein
T #DB_Nr
//
L D [AR1,P#6.0] // Adresse
LAR1
//
OPN DB [#DB_Nr] // DB aufschlagen
//
L #nums_bytes
next: T #nums_bytes
L #contant // Wert laden
T DBB [AR1,P#0.0]
L P#1.0
+AR1
L #nums_bytes
LOOP next
L W#16#0
SET
SAVE
JU end
//
Feh1: L W#16#8001 CLR
SAVE
end: T #fault_code
nw3:恢复地址寄存器
L #Ar1_log
LAR1
//
L #Ar2_log
LAR2
vvta