编程举例:
//冒泡排序程序,算法原理请参考相关资料
//此例程仅提供存于DB块中的INT类型数据排序
//结果为INT数据由小到大排列,保存于原DB块中
//FC3块,形参定义如下:

FC3功能块代码如下:
SET
SAVE
L 0
T #Error
//将输入ANY指针'Data_In'复制到LB0~LB9
L P##Data
LAR1
L D [AR1,P#0.0]
T LD 0
L D [AR1,P#4.0]
T LD 4
L W [AR1,P#8.0]
T LW 8
//ANY指针BYTE0是B#16#10
L LB 0
L B#16#10
==I
JCN ERR1
//输入数据区是否为DB块
L LB 6
L B#16#84
==I
JCN ERR2
//类型为INT
L LB 1
L B#16#5
==I
JCN ERR3
//打开输入DB块
OPN DB [LW 4]
//数据起始地址去掉数据区标识部分
L LD 6
L DW#16#FFFFFF
AD
T LD 10
//计算最后一个存储单元指针保存至LD10
L LW 2
L 2
*I
T LD 14
L L#2
-D
SLD 3
L LD 10
+D
T LD 10
//外循环计数LW20,循环次数为(数据个数-1)次
L LW 2
L 1
-I
NXT2: T LW 20
L LD 10
LAR1
L LW 20
//嵌套循环计数LW18,循环次数为(LW20)次
NXT1: T LW 18
TAR1
L P#2.0
-D
LAR1
//后一单元数据小于前一单元数据?
L DBW [AR1,P#2.0]
L DBW [AR1,P#0.0]
<I
JCN L1
//否,交换2单元数据
L DBW [AR1,P#2.0]
L DBW [AR1,P#0.0]
T DBW [AR1,P#2.0]
POP
T DBW [AR1,P#0.0]
L1: L LW 18
LOOP NXT1
L LW 20
LOOP NXT2
JU EXIT
ERR1: L 1
T #Error
JU EXIT
ERR2: L 2
T #Error
JU EXIT
ERR3: L 3
T #Error
EXIT: SET
SAVE
这段程序代码中红色加粗部分该怎么理解?