REGION :获取上下限 //REGION语句可以提高代码的可读性, #shang := UPPER_BOUND(ARR := #zhankongjian, DIM := 1); //上限 #xia := LOWER_BOUND(ARR := #zhankongjian, DIM := 1); //下限 END_REGION ; REGION :初始化指针 IF #chushihua THEN //初始化指针 #zhizheng := #xia; //让指针的值等于下限 END_IF; END_REGION ;
REGION :入栈 REGION :上升沿 #入栈(CLK := #ruzhan, Q => #yan[0]); END_REGION ; REGION :入栈开始 IF #yan[0] THEN //上升沿指令发生变化 #zhankongjian[#zhizheng] := #shurushuchu; //输入输出的值赋值给指针指向的栈空间 IF #zhizheng < #shang THEN //判断指针小于上限时 #zhizheng += 1; //指针+1 END_IF; END_IF; END_REGION ; END_REGION ; REGION :出栈 REGION :上升沿 #出栈(CLK := #chuzhan, Q => #yan[1]); END_REGION ; REGION :出栈开始 IF #yan[1] THEN //上升沿发生变化,开始出栈 IF #zhizheng < #shang THEN //指针小于上限 #shurushuchu := #zhankongjian[#zhizheng];//指针指向的栈空间中的值赋值给输入输出