step7db塊定址 step7定址方式

2021-10-12 14:39:54 字數 1847 閱讀 2947

西門子

的間接定址方式計有兩大型別:

儲存器間接定址和暫存器間接定址。

【儲存器間接定址】

儲存器間接定址的位址給定格式是:位址識別符號

指標。指標所指示

儲存單元中所包含的數值,

就是位址的確切數值單元。

儲存器間接定址具有兩個指標格式:

單字和雙字。

單字指標是乙個

16bit

的結構,從

0-15bit

,指示乙個從

0-65535

的數值,這

個數值就是被定址的儲存區域的編號。

雙字指標是乙個

32bit

的結構,從

0-2bit

,共三位,

按照進製指示被定址的位編號,

也就是0-7

而從3-18bit共位,

指示乙個從

0-65535

的數值,這個數值就是被定址的位元組編號。

指標可以存放在mdi

db和l區域中,也

就是說,可以用這些區域的內容來做指標。

單字指標和雙字指標在使用上有很大區別。下

面舉例說明:

l dw#16#35 //將位

進製數存入

acc1 t md2 //

這個值再存入

md2這是個

位的位儲存區域

l+10

將位整數

存入acc1

位進製數

自動移動到

acc2

tmw100

這個值再存入

mw100

,這是個

位的位儲存區域

opndbw[mw100] //

開啟dbw10

這裡的[mw100]

就是個單字指標,

存放指標的區域是m區,

mw100

中的值,就是指標間接指定的位址,它是個

位的值!

-------- l l#+10 //

以位形式,把

放入acc1

,此時,

acc2

中的內容為:

位整數10 t md104 //

這個值再

存入md104

這是個位的位儲存區域

a i[md104] //

對i1.2

進行與邏輯操作!

=dix[md2]

賦值背景資料位

dix6.5

adb[mw100].dbx[md2]

讀入db10.dbx6.5

資料位狀態

=q[md2] //

賦值給q6.5 -------- a db[mw100].dbx[md2] //

讀入db10.dbx6.5

資料位狀

態=q[mw100]錯誤

沒有q10這個元

件從上面系列舉

例我們至少看出來一點:

單字指標只應用在位址識別符號是非位的情況下。的確,單字指標

前面描述過,它確定的數值是

0-65535

,而對於

byte.bit

這種具體位結構來說,只能用雙字

指標。這是它們的第乙個區別,單字指標的另外乙個限制就是,它只能對tc

dbfc和fb

進行定址,通俗地說,單字指標只可以用來指代這些儲存區域的編號。

相對於單字

指標,雙字指標就沒有這樣的限制,

它不僅可以對位位址進行定址,

還可以對

byte

word

dword

定址,並且沒有區域的限制。不過,有得必有失,在對非位的區域進行定址時,

博途軟體STEP7程式移植步驟

博途軟體stpe7中,具有程式移植功能,使用者可以實現將step7 v5.5中的程式邏輯移植到博途軟體step7中,從而提高了工作效率和正確率。程式移植方法如下 1.在博途軟體step7中,在檢視下開啟的 啟動 中選擇 移植專案 命令 2.在 源路徑 域中指定要移植專案的路徑和檔名,選擇乙個移植格式...

在建DB塊時候應該注意的問題

1.字,雙字等這些佔位大於位元組的位址只能以偶數開始。2.建立陣列的時候 如上圖所示,雖然陣列是字,按照常理來說應該以位址15開始。但實際中是以16開始的,即陣列也只能以偶數開始。該陣列一共128個,到143結束。下乙個byte以144開始正常 這張圖里,陣列一共127個,以16開始,正常應該以14...

DB2 730學習筆記7

使用insert語句在表或檢視中新增新的行。insert into staff values 1212,cerny 20,sales 3,90000.00,30000.00 insert into staff values 1213,cerny 20,sales 3,90000.00,30000.0...