山东淄博市西门子工控机(授权)总代理 西门子IPC一级经销商

产品名称 山东淄博市西门子工控机(授权)总代理 西门子IPC一级经销商
公司名称 广东湘恒智能科技有限公司
价格 .00/件
规格参数 西门子PLC:西门子伺服电机
西门子触摸屏:西门子电缆
西门子变频器:西门子模块
公司地址 惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房(仅限办公)
联系电话 13510737515 13185520415

产品详情

山东泰安市西门子工控机(授权)总代理  西门子IPC一级经销商


列举,我们有了初步结论:AR中内容是8开头,那么就一定是区域间寻址;要DB区中进行寻址,只需8后面跟上一个40。84000000-840FFFFF指明了要寻址范围是:

DB区0.0——65535.7。

例如:当AR=840000D4(hex)=1000 0100 0000 0000 0000 0000 1101 0100(b),实际上就是等于DBX26.4。

我们看到,寄存器寻址指针 [AR1/2,P#byte.bit] 这种结构中,P#byte.bit又是什么呢?

【P#指针】

P#中P是Pointer,是个32位直接指针。所谓直接,是指P#中#后面所跟数值存储单元,是P直接给定。这样P#XXX这种指针,就可以被用来指令寻址中,作为一个“常数”来对待,这个“常数”可以包含或不包含存储区域。例如:

● L P#Q1.0 //把Q1.0这个指针存入ACC1,此时ACC1内容=82000008(hex)=Q1.0

★ L P#1.0 //把1.0这个指针存入ACC1,此时ACC1内容=00000008(hex)=1.0

● L P#MB100 //错误!必须byte.bit结构给定指针。

● L P#M100.0 //把M100.0这个指针存入ACC1,此时ACC1内容=83000320(hex)=M100.0

● L P#DB100.DBX26.4 //错误!DBX已经提供了存储区域,不能重复指定。

● L P#DBX26.4 //把DBX26.4这个指针存入ACC1,此时ACC1内容=840000D4(hex)=DBX26.4


我们发现,当对P#指定数值时,累加器中值和区域内寻址指针规定格式相同(也和存储器间接寻址双字指针格式相同);而当对P#指定带有存储区域时,累加器中内容和区域间寻址指针内容完全相同。事实上,把什么样值传给AR,就决定了是以什么样方式来进行寄存器间接寻址。实际应用中,我们正是利用P#这种特点,不同需要,指定P#指针,然后,再传递给AR,以确定最终寻址方式。


寄存器寻址中,P#XXX作为寄存器AR指针偏移量,用来和AR指针进行相加运算,运算结果,才是指令真正要操作确切址数值单元!

是区域内区域间寻址,址所存储区域都有了指定,,这里P#XXX只能指定纯粹数值,如上面例子中★。