- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.3.1 数学运算指令 5. 增减指令 增、减指令,又称自增和自减,是对无符号或有符号整数进行自动增加或减少一个单位的操作,数据长度可以是字节、字或双字。 使能流输出ENO断开的出错条件:0006(间接寻址);SM1.1(溢出);SM4.3(运行时间)。 在LAD和FBD中,以指令模块形式编程,执行结果:IN+1→OUT和IN-1→OUT。 在STL中,执行结果:OUT+1→OUT和OUT-1→OUT。 5.3.1 数学运算指令 (1)字节增和字节减指令:INCB,DECB (2)字增和字减指令:INCW,DECW (3)双字增和双字减指令:INCD,DECD 使能输入有效时,把一双字长的有符号输入数IN加1或减1,得到一个双字长的有符号输出结果OUT。 指令格式:INCD OUT; DECD OUT 使能输入有效时,把一字节长的无符号输入数IN加1或减1,得到一个字节的无符号输出结果OUT。 指令格式:INCB OUT; DECB OUT 使能输入有效时,把一字长的有符号输入数IN加1或减1,得到一个字长的有符号输出结果OUT。 指令格式:INCW OUT; DECW OUT 5.3.1 数学运算指令 6. 数学函数指令 数学函数指令包括平方根、自然对数、指数、三角函数等几个常用的函数指令。 运算输入输出数据都为实数。结果如果大于32位二进制表示的范围,则产生溢出。 (1)平方根指令:SQRT 把一个双字长(32位)的实数IN开方,得到32位的实数结果OUT。 指令格式:SQRT IN, OUT 返回 5.3.1 数学运算指令 (2)自然对数指令:LN (3)指数指令:EXP 把一个双字长(32位)的实数IN取以e为底的指数,得到32位的实数结果OUT。 指令格式:EXP IN, OUT 把一个双字长(32位)的实数IN取自然对数,得到32位的实数结果OUT。 指令格式:LN IN, OUT 5.3.1 数学运算指令 (4)三角函数指令:SIN、COS、TAN 程序实例:(求65°的正切值) 即正弦、余弦、正切指令。将把一个双字长(32位)的实数弧度值IN分别取正弦、余弦、正切,各得到32位的实数结果OUT。 指令格式:SIN IN, OUT; COS IN, OUT; TAN IN, OUT 5.3.1 数学运算指令 LD I0.0 //使能输入端 MOVR 3.14159, AC0 //3.14159→AC0 /R 180.0, AC0 //3.14159/180.0→AC0 *R 65.0, AC0 //65.0*AC0→AC0 TAN AC0, AC1 //TAN(AC0)→AC1 //计算结果为TAN(65°)=2.1445→AC1 //(AC1)=2.1445 图5-38 求三角函数例 返回 5.3.2 逻辑运算指令 逻辑运算是对无符号数进行的逻辑处理,主要包括逻辑与、逻辑或、逻辑异或和取反等运算指令。按操作数长度可分为字节、字和双字逻辑运算。IN1、IN2、OUT操作数的数据类型分别为:B、W、DW。 逻辑运算指令影响的特殊存储器位:SM1.0(零)。 使能流输出ENO断开的出错条件:0006(间接寻址);SM4.3(运行时间)。 返回 5.3.2 逻辑运算指令 1. 逻辑与运算指令 ANDB,字节逻辑与指令。使能输入有效时,把两个字节的逻辑数按位求与,得到一个字节长的逻辑输出结果OUT。 ANDW,字逻辑与指令。使能输入有效时,把两个字的逻辑数按位求与,得到一个字长的逻辑输出结果OUT。 ANDD,双字逻辑与指令。使能输入有效时,把两个双字的逻辑数按位求与,得到一个双字长的逻辑输出结果OUT。 指令格式:ANDB IN1, OUT;ANDW IN1, OUT;ANDD IN1, OUT 5.3.2 逻辑运算指令 2. 逻辑或运算指令 ORB,字节逻辑或指令。使能输入有效时,把两个字节的逻辑数按位求或,得到一个字节长的逻辑输出结果OUT。 ORW,字逻辑或指令。使能输入有效时,把两个字的逻辑数按位求或,得到一个字长的逻辑输出结果OUT。 ORD,双字逻辑或指令。使能输入有效时,把两个双字的逻辑数按位求或,得到一个双字长的逻辑输出结果OUT。 指令格式:ORB IN1, OUT;ORW IN1, OUT;ORD
文档评论(0)