示例一:
DECL/CHAR,10,CH1
DECL/CHAR,10,CM1
DECL/CHAR,10,CS1
DECL/CHAR,10,CH2
DECL/CHAR,10,CM2
DECL/CHAR,10,CS2
DECL/INTGR,IH1
DECL/INTGR,IM1
DECL/INTGR,IS1
DECL/INTGR,IH2
DECL/INTGR,IM2
DECL/INTGR,IS2
DECL/INTGR,ALLS1
DECL/INTGR,ALLS2
DECL/INTGR,ALLS
$$计算机当前时间
KNPTC1 = ASSIGN/STIME()
$$得到小时、分钟、秒的值
CH1 = ASSIGN/SUBSTR(KNPTC1,1,2)
CM1 = ASSIGN/SUBSTR(KNPTC1,4,5)
CS1 = ASSIGN/SUBSTR(KNPTC1,7,8)
IH1 = ASSIGN/VAL(CH1)
IM1 = ASSIGN/VAL(CM1)
IS1 = ASSIGN/VAL(CS1)
ALLS1 = ASSIGN/(IH13600+IM160+IS1)
$$循环示例开始
(UP)
KNPTC2 = ASSIGN/STIME()
CH2 = ASSIGN/SUBSTR(KNPTC2,1,2)
CM2 = ASSIGN/SUBSTR(KNPTC2,4,5)
CS2 = ASSIGN/SUBSTR(KNPTC2,7,8)
IH2 = ASSIGN/VAL(CH2)
IM2 = ASSIGN/VAL(CM2)
IS2 = ASSIGN/VAL(CS2)
ALLS2 = ASSIGN/(IH23600+IM260+IS2)
ALLS = ASSIGN/(ALLS2-ALLS1)
if/(ALLS.GE.1)
JUMPTO/(NEXT)
ELSE
JUMPTO/(UP)
ENDIF
(NEXT)
WRITE/DID(DEFAULTSCREEN),KNPTC1
WRITE/DID(DEFAULTSCREEN),KNPTC2
TEXT/OUTFIL,‘本次测试总共用时:’
WRITE/DID(DEFAULTSCREEN),ALLS
示例二:
M(RUN_T) = MACRO/SSS,EEE
DECL/INTGR,NUM11[3],NUM22[3]
DECL/DOUBLE,TOTIME
NUM11[1] = ASSIGN/VAL(ELEMNT(1,'/',SSS))
NUM11[2] = ASSIGN/VAL(ELEMNT(2,'/',SSS))
NUM11[3] = ASSIGN/VAL(ELEMNT(3,'/',SSS))
NUM22[1] = ASSIGN/VAL(ELEMNT(1,'/',EEE))
NUM22[2] = ASSIGN/VAL(ELEMNT(2,'/',EEE))
NUM22[3] = ASSIGN/VAL(ELEMNT(3,'/',EEE))
TOTIME = ASSIGN/(NUM22[1]-NUM11[1])*3600 + (NUM22[2]-NUM11[2])*60 + (NUM22[3]-NUM11[3])
WRITE/DID(DEFAULTSCREEN),'共计扫描时间为',TOTIME,'秒'
ENDMAC
应用方法如下:
STATIME = ASSIGN/STIME()
整个测量程序
ENDTIME = ASSIGN/STIME()
CALL/M(RUN_T),STATIME,ENDTIME
示例三:
DMIS有一个关键字在做这个事情.
KNPTC1 = assign/SDATETIME()
KNPTC2 = assign/SDATETIME()
KNPTC3 = assign/SELAPSETIME(KNPTC1, KNPTC2, SHORT)
KNPTC3 = assign/SELAPSETIME(KNPTC1, KNPTC2, LONG)