理论教育 数据类型与表示格式详解

数据类型与表示格式详解

时间:2023-06-23 理论教育 版权反馈
【摘要】:十六进制格式:16#数据其中16表示十六进制,#号为分隔符。BCD码用十六进制格式赋值,如16#0123表示十进制数的+123,16#8123表示十进制数的-123。表5-2给出了常用的数据类型及不同字长可以表示的数据范围。

数据类型与表示格式详解

1.常数的表示格式

在PLC编程指令中经常要用到常数,STEP7表示常数的格式有下面几种:

(1)二进制格式:2#数据

其中2表示二进制,#号为分隔符。二进制格式可以表示8位、16位或32位数据。如2#10110101、2#1100111001001111等。

(2)十六进制格式:16#数据

其中16表示十六进制,#号为分隔符。十六进制格式可以表示8位、16位或32位数据。如16#4E、16#5A4F、16#123456等。

(3)十进制格式:±整数.小数

其中“+”表示正数,“-”表示负数。十进制格式可以表示8位、16位或32位数据。如+123、-5168、456.123等。

(4)ASCII码格式:‘字符

单引号内为需要表示的字符的ASCII码,每个ASCII码字符占用一个字节,即8位的存储空间。如‘T’、‘E’、‘TEXT’、‘Show result’等。

2.数据类型

用户在编写程序时,变量的格式必须与指令的数据类型相匹配。STEP7的基本数据类型主要有布尔型(BOOL)、整数型(INT)、实数型(REAL)和BCD码。

(1)布尔型

布尔型数据为无符号数,只表示存储器中各位的状态是0(FALSE)还是1(TURE)。其长度可以是一位(Bit)、一个字节(Byte,8位)、一个字(Word,16位)或一个双字(Double Word,32位)。布尔型常数用二进制或十六进制格式赋值,如2#01010101、16#2B3C等。需注意的是,一位布尔型数据类型不能直接赋常数。

(2)整数型(INT)

整数型数据为有符号数,在存储器中用二进制补码表示,最高位为符号位,0表示正数、1表示负数,其余各位为数值位。将负数的补码按位取反后加1即得到其绝对值。

整数型数据分为16位整数INT和32位双整数DINT两种。(www.daowen.com)

16位整数INT表示的数据范围:-32768~+32767。

32位双整数DINT表示的数据范围:-2147483648~2147483647。

整数型常数用十进制格式的整数部分(不带小数点)赋值,如572、-321987等。

(3)实数型(REAL)

实数型数据为有符号的浮点数,占用32位,最高位为符号位,0表示正数、1表示负数。

实数的特点是利用有限的32位可以表示一个很大的数,也可以表示一个很小的数。

实数的表示的数据范围:正数为1.175495×10-38~3.402823×10+38,负数为-1.175495×10-38~-3.402823×10+38

实数型常数只能用十进制格式赋值,如123.45、78.0等。

(4)BCD码

BCD码为用四位二进制数表示的有符号的十进制数。最左侧一组四位数表示符号,最高位为0表示正数、为1表示负数,其余各位为数值位。BCD码分为16位和32位两种。

16位BCD码表示的数据范围:-999~+999。

32位BCD码表示的数据范围:-9999999~+9999999。

BCD码用十六进制格式赋值,如16#0123表示十进制数的+123,16#8123表示十进制数的-123。

表5-2给出了常用的数据类型及不同字长可以表示的数据范围。

表5-2 数据类型、长度及范围

978-7-111-35042-2-Chapter05-2.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈