BMB是字节快传送指令,BMB VB1,VB2,N 是将从VB1开始的n个字节复制到VB2开始的区域中;对于BMB VB20,VB100,4中VB20是一个地址即变量存储区域中字节地址是20,所以此指令是将变量区域中字节地址为20的连续4个字复制到字节地址为100 的区域中,20开始的4个字节即20 21 22 23这四个字节比如是(20)11111111 (21)00000000 (22)11111111(23) 00000000复制到地址为100 101 102 103中去,mov-W是字传送指令是将in中的字复制到out地址中去,in是一个地址,地址范围是0到32767,比如MOV-W vw100,vw200,VW100存放的是11111111 00000000,则指令执行后V200的内容就是11111111 00000000
首先一定要明白1个字,1个字节,一个双字都包含多少个二进制位在来编程序,还有存储的次序。200的移动指令比较多,字对字移,双字对双字移。W是字,存储区应该有FFFF这么大,也就是10进制是65535(无符号的),有符号的自然是一半了,32767到-32768。
西门子和三菱等都一样可以用这样的方式输出的。三菱的是 [MOV 255 K2Y0] ,它们的工作方式是把输出的位组合成字节,一个字节占8各位,可以 MOV_B 16#FF 到VB0里,那么同理,也可以把输出的Q点以连续的8个为单位组成一个输出的字节来用,所以就有QB0的出现。那么前面的16#FF是什么意思呢?那就是一个字节能单位存储区能存的十六进制最大的数据,用十进制表示就是255,用二进制表示就是11111111。在这里可以看十六进制,也可以看十进制,但是最重要的就是十六进制数据转换成的二进制数据。就是那8个1。开关的通断在计算机里用0和1表示,用Q点组成的8个存储位现在都是1,就表示8个 Q点都输出。AA表示10101010,这里的数据和实际的输出是相反的哦,数据是从后到前数的哦。
我编过一次西门子200的程序。但是不太清楚你问的是什么。你首先一定要明白1个字,1个字节,一个双字都包含多少个二进制位在来编程序,还有存储的次序。200的移动指令比较多,字对字移,双字对双字移。W是字,存储区应该有FFFF这么大,也就是10进制是65535(无符号的),有符号的自然是一半了,32767到-32768
远处吹来凉爽的风