其他 | 2023年06月16日 | 阅读:166 | 评论:2
简介
编写程序时,可以使用以下模式来寻址指令操作数:
此外,指令操作数也可以是常数。
直接定址
S7-200智能将信息存储在具有唯一地址的不同存储位置。可以明确地识别要访问的存储器地址。这样,程序将直接访问这些信息。直接寻址指定了存储区域、大小和位置;例如,VW790表示V存储区中的字位置790。
使用字节地址格式按字节、字或双字访问大多数存储区(V、I、Q、M、S、L和SM)中的数据。要通过字节、字或双字访问存储器中的数据,必须以类似于位地址的方式指定地址。如下所示,地址包括区域标识符、数据大小标志和字节、字或双字值的起始字节地址。
符号寻址
符号寻址使用字母数字字符组合来标识地址。符号使用符号名称来标识常数或ASCII字符值。
使用符号表进行全局符号分配。如果将符号地址分配给符号表或POU变量表中定义的局部变量,可以切换参数地址的查看模式(绝对(例如,I0.0)或符号(例如,泵1))。
程序编辑器中的符号寻址可以从视图菜单中选择。
间接寻址使用指针来访问内存中的数据。指针是一个双字存储单元,包含另一个存储单元的地址。只有v存储单元、l存储单元或累加器寄存器(AC1、AC2、AC3)可以用作指针。要创建指针,必须使用移动双字命令将间接寻址的内存位置地址移动到指针位置。指针也可以作为参数传递给子程序。
S7-200 SMART允许指针访问以下存储区域:I、Q、V、M、S、T(仅当前值)、C(仅当前值)、SM、AI和AQ。您不能使用间接寻址来访问单个位或访问HC、L或AC存储区。
要间接访问内存地址中的数据,通过输入一个&符号和要寻址的内存位置来创建一个指向该地址的指针。指令的输入操作数前面必须有一个&符号,表示存储单元的地址(而不是其内容)将被移到指令输出操作数中标识的位置(指针)。
在指令操作数前面输入星号(*),指定操作数是指针。如下图所示,输入*AC1指定AC1是Move Word (MOWW)指令引用的字长值的指针。在本例中,存储在VB200和VB201中的值被移至累加器AC0。
修改指针值时,记得调整被访问数据的大小:访问字节时,指针值加1;当访问定时器或计数器的字或当前值时,指针值加2;当访问双字时,指针值增加4。
参见内存类型和属性
CPU内存地址范围
特殊存储地址
本文标签: 怎样查出对方人在哪 对方地址
温馨提示:本文是作者 陈好和你在一起 发表的文章,不代表本站观点!如有侵权请联系我们删除
相关文章
网友点评
秃顶渣男
2022-03-12 21:13:48 回复
个位或访问HC、L或AC存储区。要间接访问内存地址中的数据,通过输入一个&符号和要寻址的内存位置来创建一个指向该地址的指针。指令的输入操作数前面必须有一个&符号,表示存储单元的地址(而不是其内容)将被移到指令输出操作数中标识的位置(指针)。在指
黄昏起风了
2022-03-12 17:38:19 回复
。描述如果在变量表和符号表中使用相同的地址名称,则本地用法(变量表)优先。也就是说,如果程序编辑器在变量表中找到特定程序块的名称定义,将使用该定义。如果没有找到定义,程序编辑器将检查符号表。例
半夜清风
2022-03-12 17:20:05 回复
Word (MOWW)指令引用的字长值的指针。在本例中,存储在VB200和VB201中的值被移至累加器AC0。 ①MOVD和VB200,AC1通过将VB 200的地址(VW200的初始字节)移动到AC1来创建一个指针②MOVW *AC1,AC0将AC
摁着强吻你
2022-03-12 22:25:22 回复
字长值的指针。在本例中,存储在VB200和VB201中的值被移至累加器AC0。 ①MOVD和VB200,AC1通过将VB 200的地址(VW200的初始字节)移动到AC1来创建一个指针②MOVW *AC1,AC0将AC1指向的字值移动到AC0。如下所示,您可以更改指针值。因为指针是32位
万里风
2022-03-12 18:10:21 回复
指向下一个字的位置。MOVW *AC1,AC0将AC1 (VW202)指向的字值移动到AC0描述修改指针值时,记得调整被访问数据的大小:访问字节时,指针值加1;当访问定时器或计数器的字或当前值时,指针值加2;
本文已有2位网友发表了点评 - 欢迎您
红际法律