db塊中數(shù)據(jù)類型定義問題
鄭志武
發(fā)布于2013-03-05 16:45
5
0
標(biāo)簽:
建立db塊的時候,定義db塊中的數(shù)據(jù)類型時,有點糊涂了,比如db1.dbx0.0、db1.dbx0.1、db1.dbx0.2、db1.dbx0.3.......或db1.dbb0、db1.dbb1、db1.dbb2、db1.dbb3.......或db1.dbw0、db1.dbw2、db1.dbw4.......或db1.dbd0、db1.dbd4、db1.dbd6.......這樣定義db塊中的數(shù)據(jù),以上幾種方式有什么區(qū)別呢?比如我想用db1.dbx0.0這個變量,以上5中定義方式有區(qū)別嗎,
佳答案
首先明確的是無論你如何定義db里的變量,db區(qū)域內(nèi)的地址都是可以被訪問的。
然后你給的4種方式定義的是db里變量的長度,無論長度如何指定,在用db1.dbx0.0這個變量時沒有任何區(qū)別。
即使你以雙字指定了長度,你在程序中任然可以訪問其所包含的任意的“位”、“字節(jié)”、“字”。
只要注意地址覆蓋的問題,即dbd0=dbw0+dbw2=dbb0+dbb1+dbb2+dbb3=dbx0.0+dbx0.1+...+dbx3.7
如果你使用了dbx0.0,那么dbd0、dbw0和dbb0就都不要用了,應(yīng)為他們都包含了dbx0.0
另外提一句,指定的數(shù)據(jù)類型不同,會影響變量的使用。
同樣是雙字dbd0如果定義為dint,但在程序中如果要使用real型變量,那么你填dbd0就會報錯。