资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,IW0,实验思考题二参考程序,1,:,实验思考题二参考程序,2,:,实验思考题一参考程序:,指令符,功能,指令说明,ROUND,四舍五入取双整,见课本,229,TRUNC,舍去小数部分取整,*,取整指令:,三、数据转换类指令,VD10= -2345.568,VD20=1.999,注意:,输入为实数类型,输出为双字类型整数,*,用于转换操作数的类型,主要包括:,数制转换,BCD,码转换,ASCII,码转换,注意操作数不要超出范围,指令符,B,I,I,DI,DI,R,I,B,DI,I,数制转换:,指令符,功能,BCD,I,BCD,码转换为整数,I,BCD,整数转换为,BCD,码,BCD,码转换:,指令符,功能,操作数,ITA,整数至,ASCII,IN,,,OUT,(,8,字节),,,FMT,DTA,双字至,ASCII,IN,,,OUT,(,12,字节),,,FMT,RTA,实数至,ASCII,IN,,,OUT,(由,FMT,确定 ),FMT,HTA,ATH,ASCII,码转换:,将整数字(,IN,)转换成,ASCII,字符数组。,格式,FMT,指定小数点右侧的转换精确度,以及是否将小数点显示为逗号还是点号。,P187,转换结果置于从,OUT,开始的,8,个连续字节中。,ASCII,字符数组总是,8,个字符。,nnn:0-5,FMT,IN,(,VW2,),OUT,VB10,VB11,VB12,VB13,VB14,VB15,VB16,VB17,03,12345,1,2,.,3,4,5,0B,-12,-,0,,,0,1,2,7.6,运算和数学指令,包括:数学运算指令、逻辑运算指令,特殊继电器标志位,:,SM1.0,零结果,SM1.1,溢出,SM1.2,负结果,SM1.3,除数为,0,16,位正整数的格式,:,原码,16,位负整数的格式,:,补码,32,位实数的格式,:,单精度浮点,1,位符号位,+ 8,位指数字段(偏移码),+ 23,位尾数(绝对值),指令符,功能,数据类型,ADD,I,16,位整数加,整数,ADD,DI,32,位整数加,双整数,ADD,R,小数加,实数,VW10,VW12,VW14,SM1.0,SM1.1,SM1.2,ENO,0,0,0,1,0,0,1,2000,30201,32201,0,0,0,1,-330,-542,-872,0,0,1,1,20000,32000,保持原来,0,1,0,0,-5,-32768,保持原来,0,1,0,0,-1,-32768,保持原来,0,1,0,0,1,32767,保持原来,0,1,0,0,SM1.0,零结果,SM1.1,溢出,SM1.2,负结果,OUT,:,-32768 32767,指令符,功能,数据类型,SUB,I,16,位整数减,整数,SUB,DI,32,位整数减,双整数,SUB,R,小数减,实数,VW10,VW12,VW14,SM1.0,SM1.1,SM1.2,ENO,100,100,0,1,0,0,1,201,30201,-30000,0,0,1,1,330,-542,872,0,0,0,1,20000,-32000,保持原来,0,1,0,0,-5,32767,保持原来,0,1,0,0,-2,32767,保持原来,0,1,0,0,1,-32768,保持原来,0,1,0,0,SM1.0,零结果,SM1.1,溢出,SM1.2,负结果,OUT,:,-32768 32767,指令符,功能,数据类型,MUL,I,16,位整数乘,16,位, 16,位,= 16,位,MUL,DI,32,位整数乘,32,位, 32,位,= 32,位,MUL,R,小数乘,32,位小数, 32,位小数,= 32,位小数,MUL,乘法,16,位整数, 16,位整数,= 32,位整数,VW10,VW12,VW14,SM1.0,SM1.1,SM1.2,ENO,100,0,0,1,0,0,1,-2,15000,-30000,0,0,1,1,2,15000,30000,0,0,0,1,2,-32000,保持原来,0,1,0,0,-5,32767,保持原来,0,1,0,0,2,32767,保持原来,0,1,0,0,2,-32768,保持原来,0,1,0,0,OUT,:,-32768 32767,VW10=32767,VW12=300,,当,M0.1,接通时,,VD14=9830100,指令符,功能,数据类型,DIV,I,16,位整数除,16,位,16,位,= 16,位整数,,不保留余数,DIV,DI,32,位整数除,32,位,32,位,= 32,位整数,,不保留余数,DIV,R,小数除,32,位小数,32,位小数,= 32,位小数,不保留余数,DIV,除法,16,位整数,16,位整数,= 32,位整数,保留余数,使,ENO=0,的错误条件,:,0006,间接地址,SM1.1,溢出,SM1.3,除数为,0,特殊继电器标志位,:,SM1.0,零结果,SM1.1,溢出,SM1.2,负结果,SM1.3,除数为,0,VW10,VW12,VW14,SM1.0,SM1.1,SM1.2,SM1.3,ENO,0,100,0,1,0,0,0,1,-300,2,-150,0,0,1,0,1,4200,2,2100,0,0,0,0,1,4200,0,保持原来,0,0,0,1,0,-5,32767,0,1,0,0,0,1,则,VW14,(高,16,位,余数),=1,VW16,(低,16,位,商),=4,若,VW10=17,,,VW12=4,VD14,:,余数、商,指令符,功能,备注,INC,B,字节加,1,运算不带符号,INC,W,整数加,1,运算带符号,INC,DW,双整数加,1,运算带符号,VB10,VB11,SM1.0,SM1.1,ENO,0,1,0,0,1,1,2,0,0,1,2,3,0,0,1, , , , , ,255,0,1,1,0,0,1,0,0,1,指令符,功能,备注,DEC,B,字节减,1,运算不带符号,DEC,W,整数减,1,运算带符号,DEC,DW,双整数减,1,运算带符号,VB10,VB11,SM1.0,SM1.1,ENO,0,255,0,1,0,255,254,0,0,1,254,253,0,0,1, , , , , ,1,0,1,0,1,0,255,0,1,0,指令符,功能,数据类型,SQRT,实数,SIN COS TAN,实数,LN,求自然对数,实数,EXP,求自然指数,实数,求,y=lgX,:,y-VD108,x-VD100,lnx-VD104,ln10-2.30,X1-VD100,X2-VD104,X3-VD108,Y-VD112,求 :,求,125,的立方根、,5,的立方的平方根,?,逻辑运算指令:,WAND,B,WAND,W,WAND,DW,WOR,B,WOR,W,WOR,DW,WXOR,B,WXOR,W,WXOR,DW,SM0.1,取反指令:,指令符,功能,NOT,逻辑取反,INV,B,字节每位取反,INV,W,字每位取反,INV,DW,双字每位取反,例,: VW20=89A6,,,VW21=,?,LD M0.0,MOVW VW20, VW21,INVW VW21,补充实验思考题:,判断,VW10,中的整数是否为负数,如是则求其绝对值,。,将,VW20,开始的,10,个字数据,分别乘,10-19,,即第,1,个数乘,10,,第,2,个数乘,11,,,,第,10,个数乘,19,,然后送到,VW400,开始的存储区,这,10,个数据的相对位置在移动前后不发生变化。,在,S7-200,中,有四种程序,: OS,系统程序,OB1,SBR,子程序,INT,中断程序,7.8,程序控制指令,P203,可执行代码段,主程序,子程序,中断服务程序,注释,(不被下载),PLC,在每个扫描周期总是由主程序的第一个梯级开始,由上至下、从左到右执行。,一、子程序及子程序调用与返回指令,子程序概念(,SBR,N,),N,取值,063,是应用程序中的可选组件,只有被调用时,才会被执行,采用子程序结构的优点:,子程序调用与返回指令,指令符,功能,操作数,SBR,0,调用子程序,EN,RET,从子程序有条件返回,多用于子程序内部,由判断条件决定是否结束子程序调用,或由软件自动在内部加到每个子程序的结尾。,注意,:,子程序不能使用,END,指令,,,也不能调用本身,子程序,0,子程序,1,例,1,:,I0.1,主程序,带参数调用子程序,:,局部变量表,定义:符号名,变量类型,数据类型,在调用带参数子程序时,最多可带,16,个参数,子程序的参数类型:,IN,,,IN/OUT,,,OUT,,,TEMP,局部变量的数据类型:,L,:局部存储器,子程序,0,主程序,Q0.1,
展开阅读全文