为什么指针寻址里老是用到移位指令呢?原因很简单,目的是为了形成地址寄存器(32位)地址。1、首先需要熟悉,寄存器地址32位指针格式为:AR: 0000 0000 0000 0BBB BBBB BBBB BBBB BXXX其0-2bit(用X表示)指定bit位,3-18bit(用B表示)指定byte字节。其第31bit固定为0。例如,当AR=D4(hex)=0000 0000 0000 0000 0000 0000 1101 0100(b),实际上就是等于26.4.。 2、所以要老是用到移位指令来形成寄存器(32位)地址:例如,累加器1中内容为26(十进制),即等于1A(十六进制)=0000 0000 0000 0000 0000 0000 0001 1010(b),左移3位后送至AR1后,AR=D0(十六进制)=0000 0000 0000 0000 0000 0000 1101 0000(b),实际上形成地址就是等于26.0。 3、详见:见《关于S7-300和S7-400指针寻址的说明与例程(更新版)(2008.03.04) 》下载:http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0215详见《step7编程之地址概念详解》连接:http://ishare.iask.sina.com.cn/f/22746895.htmlhttp://www.gongkong365.com/bbs/job.php?action=download&aid=96 查看原帖>>