4.1.3S7-200寻址方式 立即寻址 ■直接寻址 ■间接寻址 ■1立即寻址 指令中操作数就是操作码所需要的具体的数 据。立即数可以是字节、字、双字。 例:MovB200B100 源操作数目标操作数 例:MovB16#2AVB100
4.1.3 S7-200寻址方式 ◼ 立即寻址 ◼ 直接寻址 ◼ 间接寻址 ◼ 1立即寻址 指令中操作数就是操作码所需要的具体的数 据。立即数可以是字节、字、双字 。 例:MOVB 200 ,VB100 源操作数 目标操作数 例:MOVB 16#2A ,VB100
2.直接寻址方式 操作码后面的操作数以地址形式给出 (1)编址形式 按位寻址的格式为:Axy 存储区内另有一些元件是具有一定功能 的硬件,由于元件数量很少,所以不用 指出元件所在存储区域的字节,而是直 接指出它的编号。其寻址格式为:Ay 数据寻址格式为:ATX 例: MOVE VBI0,VB100
2. 直接寻址方式 操作码后面的操作数以地址形式给出 (1)编址形式 按位寻址的格式为:Ax.y 存储区内另有一些元件是具有一定功能 的硬件,由于元件数量很少,所以不用 指出元件所在存储区域的字节,而是直 接指出它的编号。其寻址格式为:Ay 数据寻址格式为:ATx 例: MOVB VB0 , VB100
3.间接寻址方式 间接寻址方式是,数据存放在存储器或寄存器中, 在指令中只出现所需数据所在单元的内存地址的地 址。存储单元地址的地址又称为地址指针。这种间 接寻址方式与计算机的间接寻址方式相同。 n例:MoVB* VDO vB100(VD0的内容 VB10即VB10的内容送VB100,*表示地址) 间接寻址在处理内存连续地址中的数据时非常方便, 而且可以缩短程序所生成的代码的长度,使编程更 加灵活。 用间接寻址方式存取数据需要作的工作有3步:建 立指针、间接存取和修改指针
3.间接寻址方式 ◼ 间接寻址方式是,数据存放在存储器或寄存器中, 在指令中只出现所需数据所在单元的内存地址的地 址。存储单元地址的地址又称为地址指针。这种间 接寻址方式与计算机的间接寻址方式相同。 ◼ 例: MOVB *VD0 VB100 (VD0的内容 VB10,即VB10的内容送VB100, *表示地址) ◼ 间接寻址在处理内存连续地址中的数据时非常方便, 而且可以缩短程序所生成的代码的长度,使编程更 加灵活。 ◼ 用间接寻址方式存取数据需要作的工作有3步:建 立指针、间接存取和修改指针
(1)建立指针 建立指针必须用双字传送指令(MOVD),将存储 器所要访问的单元的地址装入用来作为指针的存储 器单元或寄存器,装入的是地址而不是数据本身, 格式如下 例: Movd &vb10 vdo MOVD &Mb10ac2 MOVD &c2,LD 14 ■注意:建立指针用MOVD指令
(1)建立指针 ◼ 建立指针必须用双字传送指令(MOVD),将存储 器所要访问的单元的地址装入用来作为指针的存储 器单元或寄存器,装入的是地址而不是数据本身, 格式如下: ◼ 例: MOVD &VB10,VD0 ◼ MOVD &MB10,AC2 ◼ MOVD &C2,LD14 ◼ 注意:建立指针用MOVD指令
(2)间接存取 指令中在操作数的前面加“*”表示该操作数为 个指针。 ■下面两条指令是建立指针和间接存取的应用方法: MOVD &vb2, aco MOWW *ACO, AC1 ■若存储区的地址及单元中所存的数据如下所示 ■执行过程如下:
(2)间接存取 ◼ 指令中在操作数的前面加“*”表示该操作数为一 个指针。 ◼ 下面两条指令是建立指针和间接存取的应用方法: ◼ MOVD &VB2,AC0 ◼ MOVW *AC0,AC1 ◼ 若存储区的地址及单元中所存的数据如下所示 ◼ 执行过程如下: