【S7-300使用指南】29.ANY參數(shù)類型
唐琳
發(fā)布于2015-12-31 09:52
23
0
標簽:程序編寫, 軟件,
1 ANY參數(shù)類型概念
在Pointer參數(shù)類型中我們已經(jīng)告訴大家Pointer參數(shù)類型是基于交叉區(qū)域寄存器間接尋址發(fā)展而來的,由于交叉區(qū)域寄存器間接尋址無法存放數(shù)據(jù)塊編號信息,所以我們?yōu)榱丝梢詫?shù)據(jù)塊進行尋址,在交叉區(qū)域寄存器間接尋址的存儲空間中增加了一個字的空間來存放數(shù)據(jù)塊編號信息,但是這樣也只能一次尋址一個存儲區(qū)域,如果我們想對連續(xù)的幾個存儲空間進行尋址比如對MW0、MW2、MW4一起進行尋址,無論是寄存器尋址還是Pointer參數(shù)類型都是無法完成的。此時我們引進ANY參數(shù)類型,ANY參數(shù)類型在Pointer參數(shù)類型的基礎(chǔ)上又增加了兩個字的存儲空間。
圖1-1
圖1-2
圖1-3
ANY參數(shù)類型中第0字節(jié)是ANY參數(shù)類型的標識位,無論何時只要是ANY參數(shù)類型第0字節(jié)就是16進制的10。第1字節(jié)是數(shù)據(jù)類型信息,確定每個存儲空間的數(shù)據(jù)類型,圖 1-4是每種數(shù)據(jù)類型對應(yīng)的16進制代碼,第2第3字節(jié)重復(fù)因子表示由幾個存儲空間構(gòu)成的這段指針。
圖 1-4
2 ANY參數(shù)類型舉例 下面我們用P#DB1.DBX0.0 WORD 3這個ANY類型指針來給大家具體舉例,首先我們要明確指針P#DB1.DBX0.0 WORD 3是由DB1.DBW0、DB1.DBW2、DB1.DBW4、三個連續(xù)的存儲空間構(gòu)成同時這三個存儲空間的數(shù)據(jù)類型是WORD。
圖2-1
圖2-2
圖2-3
圖2-4
圖2-5
3 程序示例 首先要告訴大家我們這個程序的功能是將ANY指針規(guī)定的空間的數(shù)值相加求和。
圖3-1
圖3-2
圖3-3
圖3-4
圖3-5
圖3-6