SIEMENS酒泉西门子PLC代理商
SIEMENS酒泉西门子PLC代理商
SIEMENS酒泉西门子PLC代理商
浮点数常量的存储方式
常量
常量也称为常数。常量一经声明后便保持不变,试图在程序运行过程中修改一个常量的值将会引发错误。S7-200 SMART的很多指令都可以使用常量作为参数,支持的常量形式包括二进制常量、十进制常量、十六进制常量、ASCH常量、字符串常量、实数常量。
① 二进制常量。二进制常量以标识符“2#”开头,其数字基数为0和1,比如2#1101 1111。它代表的二进制数为 1101 1111,即十进制数 223。
注意:常量 2#1101_1111 中的下划线也可以去掉,写作 2#11011111,两种方式都是允许的。下划线的好处是可以增加程序的可读性。
② 十进制常量。十进制常量不需要特殊的标识符,直接写一个数值即可,比如:2018。
③ 十六进制常量。十六进制常量以标识符“16#”开头,其数字基数为0~9及英文字母A~F。比如:16#1A 1B。它代表的十六进制数为 IA1B,即十进制数 6683。
④ ASCII 常量。ASCII 常量是使用英文的单引号包含的常数字符,比如:“ABC”。
⑤ 字符串常量。字符串常量是使用英文的双引号包含的字符串,比如:“ABC”。
从外观上看,ASCII 常量与字符串常量的区别仅在于前者使用单引号,后者使用双引号。但是,在PLC的存储上二者有所不同。以数据“ABC”为例,设将其有放到地址 VBO,当将其作为 ASCH 常量使用时,它占用三个字节:VB0 存放“A” VB1 存放“B”, VB2 存放“C”。当将其作为字符串常量使用时,它占用四个字节 VB0 存放的是字符串的长度“3”;VB1 存放“A”,VB2 存放“B”,VB3 存放“C如表 3-1 所示。
表3-1 ASCI 常量和字符串常量
在 ASCII 常量和字符串常量中,如果要表示特殊字符,需要用符号“$”转义。比如,要使用一个含有双引号的字符串 A“BC”D,要写成“AS”BC$“D”。或者要显示一个字符串“Cost $50”,需要写成“Cost $$50”。常见的转义字符见表 3-2。
表 3-2 常见转义字符
⑥实数常量。表达一个十进制的浮点数。当数值带有小数点时,即被视为实数常量。比如,可以在数据块表中定义 VD0 为 3.1415926,也可以在某些支持实数的指令参数中直接写人实数。
浔之漫智控技术(上海)有限公司专注于西门子等