S7-300 S7-400语句表(STL)编程手册51-100

合集下载

S7-300全教程_语句命令解释

S7-300全教程_语句命令解释

第一章 S7-300/400的基本结构1、 S7-300/400属于模块式PLC,主要由机架、CPU模块、信号模块、功能模块、接口模块、通信处理器、电源模块和编程设备(工程师、操作员站和操作屏)组成。

图1-1 PLC控制系统示意图PLC的主要生产厂家:德国的西门子(Siemens)公司,美国Rockwell公司所属的AB公司,GE-Fanuc公司,法国的施耐德(Schneider)公司,日本的三菱和欧姆龙(OMRON)公司。

PLC的工作过程表1-1 逻辑运算关系表与或非Q4.0=I0.0*I0.1 Q4.1 = I0.2+I0.3 Q4.2 =/I0.4I0.0 I0.1 Q4.0 I0.2 I0.3 Q4.1 I0.4 Q4.20 0 0 0 0 0 0 10 1 0 0 1 1 1 01 0 0 1 0 11 1 1 1 1 1在CPU模块上有存储器(用来存放系统程序、用户程序、逻辑变量和其它一些信息),包括ROM和RAM。

可通过扩展槽扩展用户RAM。

l RAM:主程序区OB1+子程序区(FB、FCB、定时中断块等)断电时由锂电池供电(几年)以免RAM中信息丢失。

锂电池电压< 规定值,灯报警,换电池(期间靠电容充电几分钟)。

l PLC采用循环执行用户程序的方式。

OB1是用于循环处理的组织块(主程序),它可以调用别的逻辑块,或被中断程序(组织块)中断。

在起动完成后,不断地循环调用OB1,在OB1中可以调用其它逻辑块(FB, SFB, FC 或SFC)。

循环程序处理过程可以被某些事件中断。

在循环程序处理过程中,CPU并不直接访问I/O模块中的输入地址区和输出地址区,而是访问CPU内部的输入/输出过程映像区。

批量输入、批量输出。

梯形图中Q4.0的线圈(称为内部线圈)―通电‖时,对应的输出过程映像位为1状态。

信号经输出模块隔离和功率放大后,继电器型输出模块中对应的硬件继电器的线圈(外部线圈)通电,其常开触点闭合,使外部负载通电工作。

S7-300400 的编程语言与指令系统

S7-300400 的编程语言与指令系统

S7-300/400 的编程语言与指令系统1. S7-300/400 的编程语言1.1 PLC 编程语言的国际标准IEC 61131 是PLC 的国际标准,1992~1995 年发布了IEC 61131标准中的1 ~4 部分,我国在1995 年11 月发布了GB/T15969-1/2/3/4(等同于IEC 61131-1/2/3/4)。

IEC 61131-3 广泛地应用PLC、DCS 和工控机、“软件PLC”、数控系统、RTU 等产品。

定义了5 种编程语言1) 指令表IL(Instruction list):西门子称为语句表STL。

2) 结构文本ST(Structured text):西门子称为结构化控制语言(SCL)。

3) 梯形图LD(Ladder diagram):西门子简称为LAD。

4) 功能块图FBD (Function block diagram):标准中称为功能方框图语言。

5) 顺序功能图SFC(Sequential function chart):对应于西门子的S7Graph。

1.2 STEP 7 中的编程语言梯形图、语句表和功能块图是3 种基本编程语言,可以相互转换。

1.顺序功能图(SFC) :STEP 7 中的S7 Graph2.梯形图(LAD)直观易懂,适合于数字量逻辑控制。

“能流”(Power flow)与程序执行的方向。

3. 语句表(STL):功能比梯形图或功能块图强。

4.功能块图(FBD) “LOGO!”系列微型PLC 使用功能块图编程。

5.结构文本(ST):STEP 7 的S7 SCL(结构化控制语言)符合EN61131-3 标准。

SCL 适合于复杂的公式计算、复杂的计算任务和最优化算法,或管理大量的数据等。

6.S7 HiGraph 编程语言图形编程语言S7 HiGraph 属于可选软件包,它用状态图(state graphs)来描述异步、非顺序过程的编程语言。

7.S7 CFC 编程语言可选软件包CFC(Continuous Function Chart,连续功能图)用图形方式连接程序库中以块的形式提供的各种功能。

s7-300PLC编程语句手册汇总(打印版)

s7-300PLC编程语句手册汇总(打印版)
输出线圈等同于STL程序中的赋值指令(用等于号“=”表示),所使用的操作数可以是:Q、M、L、D。
中间输出
在梯形图设计时,如果一个逻辑串很长不便于编辑时,可以将逻辑串分成几个段,前一段的逻辑运算结果 (RLO)可作为中间输出,存储在位存储器(I、Q、M、L或D)中,该存储位可以当作一个触点出现在其他逻辑串中。中间输出只能放在梯形图逻辑串的中间,而不能出现在最左端或最右端。
条指令操作数均采用了直接寻址方式。
3.存储器间接寻址(1/3)
存储器间接寻址,简称间接寻址。该寻址方式在指令中以存储器的形式给出操作数所在存储器单元的地址,也就是说该存储器的内容是操作数所在存储器单元的地址。该存储器一般称为地址指针,在指令中需写在方括号“[]”内。地址指针可以是字或双字,对于地址范围小于65535的存储器可以
跳变沿检测指令
STEP 7中有2类跳变沿检测指令,一种是对RLO的跳变沿检测的指令,另一种是对触点的跳变沿直接检测的梯形图方块指令。
1.RLO上升沿检测指令
2.RLO下降沿检测指令
3.RLO边沿检测指令的工作时序
触点信号上升沿检测指令
触点信号下降沿检测指令
触点信号边沿检测指令的工作时序
定时器与计数器指令
常闭触点所使用的操作数是:I、Q、M、L、D、T、C。
输出线圈(赋值指令)
输出线圈与继电器控制电路中的线圈一样,如果有电流(信号流)流过线圈(RLO=“1”),则被驱动的操作数置“1”;如果没有电流流过线圈(RLO=“0”),则被驱动的操作数复位(置“0”)。输出线圈只能出现在梯形图逻辑串的最右边。
S_PULSE(脉冲S5定时器)
S_PULSE(脉冲S5定时器)
S_PULSE(脉冲S5定时器)

s7-300PLC编程语句手册汇总

s7-300PLC编程语句手册汇总

s7-300PLC编程语句手册汇总S7-300是一种可编程控制器,它有自己的编程语言和指令系统。

在使用S7-300进行编程时,需要了解其语言和指令系统的特点和用法。

S7-300的编程语言包括LAD(梯形图)、FBD(功能块图)和STL(结构化文本语言)。

其中,LAD是最常用的一种语言,它使用梯形图形式来表示程序的逻辑关系。

FBD则是一种图形化的编程语言,它使用不同的功能块来表示程序的逻辑关系。

STL则是一种类似于C语言的文本语言,它使用结构化的语法来表示程序的逻辑关系。

S7-300的指令系统包括基本指令和扩展指令。

基本指令包括逻辑指令、算术指令、移位指令等,用于实现程序的基本功能。

扩展指令则是在基本指令的基础上进行扩展,用于实现更加复杂的功能。

在使用S7-300进行编程时,需要根据具体的应用场景选择合适的编程语言和指令。

同时,还需要注意编程的规范和标准,以确保程序的可靠性和稳定性。

总之,S7-300的编程语言和指令系统是其核心功能之一,掌握其特点和用法对于进行编程工作非常重要。

在实际应用中,需要根据具体的需求和要求,选择合适的编程语言和指令,以实现程序的优化和效率提升。

STEP 7编程语言介绍STEP 7是一种用于编程可编程逻辑控制器(PLC)的工具。

它被广泛应用于自动化控制系统中,包括工厂自动化、机器人控制、物流自动化、建筑自动化等领域。

数据类型在STEP 7中,有多种数据类型可供使用,包括整型、浮点型、布尔型、字符型等。

这些数据类型可用于存储和处理不同类型的数据,以满足不同的应用需求。

参数数据类型在编写PLC程序时,需要指定参数的数据类型。

这些参数可以是输入、输出或内部数据。

参数的数据类型决定了它们可以存储的数据类型,以及它们可以执行的操作。

PLC用户存储区的分类及功能PLC用户存储区是用于存储程序和数据的区域。

它可以分为程序存储区和数据存储区。

程序存储区用于存储PLC程序,而数据存储区用于存储程序中使用的数据。

西门子编程 PLC S7-300语句表 助记符 中英文全称对照

西门子编程 PLC S7-300语句表 助记符 中英文全称对照

西门子编程PLC S7-200/300语句表助记符英文全称助记指令(英文全称意思) :指令含义1 、LD ( Lode 装载 ) :动合触点2、LDN ( Lode Not 不装载 ) : 动断触点3、A ( And 与动合) : 用于动合触点串联4、AN ( And Not 与动断 ) :用于动断触点串联5、O ( Or 或动合 ) :用于动合触点并联6、ON ( Or Not 或动断 ) : 用于动断触点并联7、= ( Out 输出 ) :用于线圈输出8、OLD ( Or Lode): 块或9、ALD ( And Lode): 块与10、LPS ( Logic Push ) :逻辑入栈11、LRD ( Logic Read ) :逻辑读栈12、LPP ( Logic Pop ) :逻辑出栈13、NOT ( not 并非 ) :非14、NOP ( No Operation Performed ) : 无操作15、AENO ( And ENO ) : 指令盒输出端ENO相与16、S ( Set 放置 ) : 置117、R ( Reset 重置,清零 ) :清零18、P ( uP 上升) :正跳变19、N ( dowN 下降) :负跳变20、TON ( On_Delay Timer ) :通电延时21、TONR ( Retentive On_Delay Timer ) : 有记忆通电延时型22、TOF ( Off_ Delay Timer ) :断电延时型23、CTU ( Count Up ) : 递增计算器24、CTD ( Count Down ) : 递减计数器25、CTDU ( Count Up/ Count Down ) :增减计数器26、ADD ( add 加 ) : 加注意 //ADD_I (_ I 表示整数) ADD_DI( DI表示双字节整数)ADD-R(R 表示实数)它们都是加运算只是数的大小不同!!后面有很多这样的我就略写了!27、SUB ( Subtract 减去,减少) :减28、MUL ( Multiply ) : 乘29、DIV ( Divide ) : 除30、SQRT ( Square root ) : 求平方根31、LN ( Napierian Logarithm 自然对数 ) : 求自然对数32、EXP ( Exponential 指数的 ) :求指数33、INC_B ( Increment 增加 ) :增134、DEC_B ( Decrement 减少 ) :减135、WAND_B ( Word and 与命令 ) :逻辑与//其中_B代表数据类型还有W(字节)、DW双字后面几个都是这样的。

西门子 s7-300 s7-400编程语句表(stl)参考手册

西门子 s7-300 s7-400编程语句表(stl)参考手册

美国(约翰森城) 技术支持和授权 当地时间:星 期一到星 期五 08:00:00 - 17:00 电话:+1 (0) 770 740 3505 传真:+1 (0) 770 740 3699 E-Mail:isd-callcenter@sea. GMT: -5:00
亚洲/ 澳大利亚(北京) 技术支持和授权 当 地 时 间:星期一到星期五 8:30 - 17:30 电话:+86 10 64 75 75 75 传真:+86 10 64 74 74 74 E-Mail: @ GMT: +8:00
SIMAT IC 热线和授权服务和技术支持 除了纸文件资料以外,我们在网上还提供有在线资料: /automation/service&support (英文网站) /service (中文网站) 在网上你可以找到: • • • • • 北 大 上 广 成 新闻列表可以向你提供不断更新的最新产品信息。 通过网上服务和技术支持部分的搜索功能,可以找到所需文件。 在论坛部分,全世界的用户和专家都可交流其经验。 通过我们在网上的代表处数据库, 你可以找到当地的自动化与驱动集团代表 处。 有关现场服务、修理、备件等更多信息,可参见“服务”。 京:(010) 6471 9990 连:(0411) 369 9760 - 40 海:(021) 5879 5255 州:(020) 8732 3967 都:(028) 6820 0939
vii
前言
viii
目录
前言…………………………………………………………………………………………………...iii 目录…………………………………………………………………………………………………..ix 1 位逻辑指令…………………………………………………………………………………….1-1 1.1 位逻辑指令概述 ...................................................................................... 1-1 1.2 A “ 与”................................................................................................. 1-3 1.3 AN “ 与非” ........................................................................................... 1-4 1.4 O “ 或”................................................................................................. 1-5 1.5 ON “ 或非”........................................................................................... 1-6 1.6 X “异或” ........................................................................................... 1-7 1.7 XN “ 异或非” ........................................................................................ 1-8 1.8 O 先“ 与” 后“ 或”................................................................................... 1-9 1.9 A( “ 与” 操作嵌套开始.......................................................................... 1-10 1.10 AN( “ 与非” 操作嵌套开始 .................................................................... 1-11 1.11 O( “ 或” 操作嵌套开始 ............................................................................ 1-11 1.12 ON( “ 或非” 操作嵌套开始.................................................................... 1-12 1.13 X( “异或”操作嵌套开始...................................................................... 1-12 1.14 XN( “ 异或非” 操作嵌套开始 ................................................................. 1-13 1.15 ) 嵌套闭合 .......................................................................................... 1-14 1.16 = 赋值 ............................................................................................... 1-15 1.17 R 复位 ............................................................................................... 1-16 1.18 S 置位 ................................................................................................. 1-17 1.19 NOT RLO 取反 ................................................................................. 1-18 1.20 SET RLO 置位(=1 ) ........................................................................ 1-18 1.21 CLR RLO 清零(=0 )....................................................................... 1-19 1.22 SAVE 把 RLO 存入 BR 寄存器........................................................... 1-20 1.23 FN 下降沿 .......................................................................................... 1-21 1.24 FP 上升沿 .......................................................................................... 1-23 比较指令……………………………………………………………………………………….2-1 2.1 比较指令概述..........................................................................................2-1 2.2 ? I 比较两个整数(16 位).....................................................................2-2 2.3 ? D 比较两个双整数(32 位) ...............................................................2-3 2.4 ? R 比较两个浮点数(32 位)................................................................2-4 转换指令………………………………………………………………………………………3-1 3.1 转换指令概述..........................................................................................3-1 3.2 BTI BCD 转成整数(16 位) .................................................................3-2 3.3 ITB 整数(16 位)转成 BCD.................................................................3-3 3.4 BTD BCD 转成整数(32 位)..............................................................3-4

西门子 S7-300 指令列表 说明书

西门子 S7-300 指令列表 说明书
S7-300 指令列表
CPU技术数 CPU 312C - 314C-2 DP/PtP
该指令表的订货号为: 6ES7 398-8AA10-8BN0
2001年10月版
A5E00105517-01
西门子公司版权所有©2001。保留所有权利 未经明确的书面授权,禁止复制、传递或使用本手册或其中的内容。 违者必究。保留所有权利包括专利权、实用新型或外观设计专有权。 西门子股份有限公司 自动化与驱动集团 工业自动化系统部 邮政信箱4848,纽伦堡D- 90327
西门子股份有限公司
郑重声明 我们已核对过,本手册的内容与所述硬件和软件相符。但错误在所难 免,不能保证完全的一致。本手册中的内容将定期审查,并在下一版 中进行修正。欢迎提出改进意见。
®Siemens AG 2001 若有改动,恕不另行通知。
6ES7398-8AA10-8BN0
目录
指令表的有效范围 .............................................................................................................................................. 1 地址标识符和参数范围....................................................................................................................................... 1 缩写词和助记符..........................................................................................

语句表(STL)编程

语句表(STL)编程

1.2
A 与运算........................................................................................................... 1-3
1.3
AN 与非运算..................................................................................................... 1-4
免责声明
我们已检查过本手册中的内容与所描述的硬件和软件相符。由于差错 在所难免,我们不能保证完全一致。我们会定期审查本手册中的内 容,并在后续版本中进行必要的更正。欢迎提出改进意见。
Siemens AG Bereich Automation and Drives Geschaeftsgebiet Industrial Automation Systems Postfach 4848, D- 90327 Nuernberg
A5E00446505-01
iii
前言
要求
如要有效地使用该语句表手册,应当熟悉 STEP 7 在线帮助所提供的 S7 编程理论。 该语言包也使用 STEP 7 标准软件,因此应当熟悉该软件的操作,并阅读所附文 档。
本手册是文档包“STEP 7 参考书目”中的一部分。
下表显示了 STEP 7 文档的总览:
1.8
O 先与运算后或运算 ........................................................................................ 1-9
1.9
A( 与运算嵌套开始 ......................................................................................... 1-10
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.8 INVI 对整数求反码(16 位)格式INVI说明使用对整数求反码指令(INVI),可以对累加器 1 低字中的 16 位数值求反码。

求反码指令为逐位转换,即“0”变为“1”,“1”变为“0”。

其结果保存在累加器 1 的低字中。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - - - - - -举例STL 解释L IW8 INVIT MW10 // 将数值装入累加器 1 低字中。

// 对 16 位数求反码。

// 将结果传送到存储字 MW10。

内容累加器 1 低字位15... .. .. 0INVI 执行之前0110 0011 1010 1110 INVI 执行之后1001 1100 0101 00013.9 INVD 对双整数求反码(32 位)格式INVD说明使用对双整数求反码指令(INVD),可以对累加器 1 中的 32 位数值求反码。

求反码指令为逐位转换,即“0”变为“1”,“1”变为“0”。

其结果保存在累加器 1 中。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - - - - - -举例STL 解释L ID8 INVDT MD10 // 将数值装入累加器 1 中。

// 对 32 位数求反码。

// 将结果传送到存储双字 MD10。

内容累加器 1 高字累加器 1 低字位31... .. .. ...16 15... .. .. 0INVD 执行之前0110 1111 1000 1100 0110 0011 1010 1110 INVD 执行之后1001 0000 0111 0011 1001 1100 0101 00013.10 NEGI 对整数求补码(16 位)格式NEGI说明使用对整数求补码指令(NEGI),可以对累加器 1 低字中的 16 位数值求补码。

求补码指令为逐位转换,即“0”变为“1”,“1”变为“0”;然后对累加器中的内容加“1”。

转换结果保存在累加器 1 的低字中。

求补码指令相当于该数乘以“-1”。

状态位 CC 1、CC 0、OS 和 OV 都设定为运算结果的一个功能。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- x x x x - - - -状态字生成CC 1 CC 0 OV OS结果 = 0 0 0 0 --32768 ≤结果≤-1 0 1 0 -32767 ≥结果≥1 1 0 0 -结果 = 2768 0 1 1 1举例STL 解释L IW8 NEGIT MW10 // 将数值装入累加器 1 低字中。

// 对 16 位数求补码。

// 将结果传送到存储字 MW10。

内容累加器 1 低字位15... .. .. 0NEGI 执行之前0101 1101 0011 1000 BEGI 执行之后1010 0010 1100 10003.11 NEGD 对双整数求补码(32 位)格式NEGD说明使用对双整数求补码指令(NEGD),可以对累加器 1 中的 32 位数值求补码。

求补码指令为逐位转换,即“0”变为“1”,“1”变为“0”;然后对累加器中的内容加“1”。

转换结果保存在累加器 1 中。

求补码指令相当于该数乘以“-1”。

指令的执行与 RLO 无关,而且对 RLO 没有影响。

状态位 CC 1、CC 0、OS 和OV 都设定为运算结果的一个功能。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- x x x x - - - -状态字生成CC 1 CC 0 OV OS结果 = 0 0 0 0 -- 2,147,483,648 ≤结果≤-1 0 1 0 -2,147,483,647 ≥结果≥ 1 1 0 0 -结果 = 2,147,483,648 0 1 1 1举例STL 解释L ID8 NEGDT MD10 // 将数值装入累加器 1 中。

// 对 32 位数求补码。

// 将结果传送到存储双字 MD10。

内容累加器 1 高字累加器 1 低字位31... .. .. ...16 15... .. .. 0NEGD 执行之前0101 1111 0110 0100 0101 1101 0011 1000 ITD 执行之后1010 0000 1001 1011 1010 0010 1100 1000 (X = 0 或1,该位不用于转换)3.12 NEGR 对浮点数求反(32 位,IEEE-FP)格式NEGR指令说明使用 NEGR(对 32 位 IEEE 浮点数求反)指令,可以对累加器 1 中的浮点数(32 位,IEEE-FP)求反。

该指令可转换累加器 1 中位 31 的信号状态(尾数的符号位)。

其结果保存在累加器 1 中。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - - - - - -举例STL 解释L ID8 NEGRT MD10 // 将数值装入累加器 1 中(例如:ID 8 = 1.5E+02)。

// 将浮点数(32 位,IEEE FP)取反;结果保存到累加器 1 中。

// 将结果传送到存储双字 MD10(例如:结果 = -1.5E+02)。

3.13 CAW 交换累加器 1 低字中的字节顺序(16 位)格式CAW说明使用 CAW 指令,可以反转累加器 1 低字中的字节顺序。

结果保存在累加器 1的低字中。

累加器 1 的高字和累加器 2 保持不变。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - - - - - -举例STL 解释L MW10 CAWT MW20 // 将存储字 MW10 的数值装入累加器1。

// 反转累加器 1 低字中的字节顺序。

// 将结果传送到存储字 MW20。

内容累加器 1 高字中的高字节累加器 1 高字中的低字节累加器 1 低字中的高字节累加器 1 低字中的低字节CAW 执行之前数值A 数值B 数值C 数值D CAW 执行之后数值A 数值B 数值D 数值C3.14 CAD 交换累加器 1 中的字节顺序(32 位)格式CAD说明使用 CAD 指令,可以反转累加器 1 中的字节顺序。

结果保存在累加器 1 中。

累加器 2 保持不变。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - - - - - -举例STL 解释L MD10 CADT MD20 // 将存储双字 MD10 的数值装入累加器1。

// 反转累加器 1 中的字节顺序。

// 将结果传送到存储双字 MD20。

内容累加器 1 高字中的高字节累加器 1 高字中的低字节累加器 1 低字中的高字节累加器 1 低字中的低字节CAD 执行之前数值A 数值B 数值C 数值D CAD 执行之后数值D 数值C 数值B 数值A3.15 RND 取整格式RND说明RND 指令(32 位 IEEE 浮点数转换成为 32 位整数)将累加器 1 中的内容作为一个 32 位 IEEE 浮点数进行编译(32 位,IEEE-FP)。

使用该指令,可以将32 位 IEEE 浮点数转换成为一个 32 位整数(双整数),并将结果取整为最近的整数。

如果被转换数字的小数部分位于奇数和偶数结果中间,则该指令选择偶数结果。

如果有数值超出这一范围,则状态位 OV(溢出位)和 OS(存储溢出位)被置为“1”。

结果保存在累加器 1 中。

出错时,将不进行转换,并指示溢出(利用 NaN 或无法表示为一个 32 位整数的浮点数)。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - x x - - - -举例STL 解释L MD10 RNDT MD20 // 将浮点数装入累加器 1 低字中。

// 将浮点数(32 位,IEEE FP)转换为整数,并将结果取整。

// 将结果(双整数)传送到存储双字 MD20。

转换之前的数值转换之后的数值MD10 = "100.5" => RND => MD20 = "+100" MD10 = "-100.5" => RND => MD20 = "-100"3.16 TRUNC 截尾取整格式TRUNC说明TRUNC 指令(32 位 IEEE 浮点数转换成为 32 位整数)将累加器 1 中的内容作为一个 32 位 IEEE 浮点数进行编译。

使用该指令,可以将 32 位 IEEE 浮点数转换成为一个 32 位整数(双整数)。

其结果为被转换浮点数的整数部分(IEEE取整方式“截尾取整”)。

如果有数值超出这一范围,则状态位 OV(溢出位)和 OS(存储溢出位)被置为“1”。

结果保存在累加器 1 中。

出错时,将不进行转换,并指示溢出(利用 NaN 或无法表示为一个 32 位整数的浮点数)。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - x x - - - -举例STL 解释L MD10 TRUNCT MD20 // 将浮点数装入累加器 1 中。

// 将浮点数(32 位,IEEE-FP)转换为整数(32 位)并对结果取整。

结果保存在累加器 1 中。

// 将结果(双整数)传送到存储双字 MD20。

转换之前的数值转换之后的数值MD10 = "100.5" => TRUNC => MD20 = "+100" MD10 = "-100.5" => TRUNC => MD20 = "-100"3.17 RND+ 取整为较大的双整数格式RND+说明RND+ 指令(32 位 IEEE 浮点数转换成为 32 位整数)将累加器 1 中的内容作为一个 32 位 IEEE 浮点数进行编译。

使用该指令,可以将 32 位 IEEE 浮点数转换成为一个 32 位整数(双整数),并将结果取整为大于或等于该浮点数的最小整数(IEEE 取整方式“向上取整”)。

如果有数值超出这一范围,则状态位 OV(溢出位)和 OS(存储溢出位)被置为“1”。

结果保存在累加器 1 中。

出错时,将不进行转换,并指示溢出(利用 NaN 或无法表示为一个 32 位整数的浮点数)。

状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - x x - - - -举例STL 解释L MD10 RND+T MD20 // 将浮点数(32 位,IEEE-FP)装入累加器 1 中。

相关文档
最新文档