STL中地址轉(zhuǎn)換的問題
劉玉蓉
發(fā)布于2014-11-28 17:53
191
0
標(biāo)簽:
當(dāng)利用寄存器尋址的時候,為什么AR=840000D4(hex)實際上就是等于DBX26.4呢,還有為什么083000320(hex)=M100.0 ,D4轉(zhuǎn)換為26.4,320可以轉(zhuǎn)換為M100.0這一個一個排列下來的吧,還有這可以通過什么樣的計算公式可以算出來啊,
佳答案
為什么AR=840000D4(hex)實際上就是等于DBX26.4呢,還有為什么083000320(hex)=M100.0 ?
1、首先要了解基本規(guī)定:作為雙字指針時,就應(yīng)該按照3-18bit指定byte,0-2bit指定bit來確定終指令要操作的地址。0000 0000 0000 0BBB BBBB BBBB BBBB BXXX。例如:
0000 0000 0000 0000 0000 0000 0000 1010 = 1.2
2、第24、25、26位規(guī)定取值的范圍:
當(dāng)是對P區(qū)域?qū)ぶ窌r,AR=800xxxxx
當(dāng)是對I區(qū)域?qū)ぶ窌r,AR=810xxxxx
當(dāng)是對Q區(qū)域?qū)ぶ窌r,AR=820xxxxx
當(dāng)是對M區(qū)域?qū)ぶ窌r,AR=830xxxxx
當(dāng)是對DB區(qū)域?qū)ぶ窌r,AR=840xxxxx
當(dāng)是對DI區(qū)域?qū)ぶ窌r,AR=850xxxxx
當(dāng)是對L區(qū)域?qū)ぶ窌r,AR=870xxxxx
3、根據(jù)上述規(guī)定:
、AR=840000D4(hex)實際上就是對DB區(qū)域?qū)ぶ罚?000D4(hex)為0000 0000 0000 0000 1101 0100=26.4,因此AR=840000D4(hex)實際上就是等于DBX26.4。
、AR=83000320(hex)是對M區(qū)域?qū)ぶ罚?00320(hex)為0000 0000 0000 0011 0010 0000=100.0,因此AR=83000320(hex)實際上就是等于M100.0.。
4、建議系統(tǒng)看看:
見《關(guān)于S7-300和S7-400指針尋址的說明與例程(更新版)》下載:
https://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=F0215