1.PLC数据存储原理简介H123U/H123S小型PLC内部采用的是32位的处理器,PLC中的数据处理和电脑中的数据处理基本是一致的。所有的CPU进行数据处理时,都是将其他进制的数据转换成二进制数进行加减乘除运算的。二进制数据是只有0和1两种状态的数据,在计算机内部电路中实际是以“高电平”和“低电平”来表示数据“1”和“0”的。 1.1 高电平高电平是电工程学中的一种叫法,与低电平相对。在逻辑电平中,保证逻辑门的输入电平高于某个输入电压(Vin)时,则认为输入电平为高电平。对于不同芯片,不同逻辑的电平信号而言。这个“Vin”也不是固定的。比如对于3.3v的TTL电平而言,低电平一般认为是1.6v以下为低电平(实际使用时都是输出0v作为低电平),1.8v-3.3v认为是高电平(在工程应用中一般高电平直接输出3.3v)。 电平信号是用电压表示数字量的一种方法,只有0和1两种状态。高电平一般为“1”,低电平一般为”0″(有特殊情况,RS232电平信号是负逻辑,有兴趣的可以查一下) 1.2 低电平和高电平相对,表示数字量“0” 2、二进制简介二进制”用于计算机计算则是最简捷方便的进制,对于1位数的计算有:0+0=0;0+1=1;1+0=1;1+1=10(有进位,此时需用2个位来表示)这些计算只需用典型的“与”、“或”、“非”逻辑电路就可组合完成运算了。 计算机中完成数据计算的实际上是数字电路中的逻辑电路“与门”“或门”“非门”,二进制只有2种数据状态“低电平0”和”高电平1″。对于计算机来说,只认识高低电平0和1,所有的其他进制的数据都必须转换成二进制数据,计算机才能完成数据的处理运算。可以说二进制数据是计算机进行数据计算的基础,二进制对于计算机来说具有举足轻重的作用。(我们常听说计算机只认得0和1就是这个意思)。 位的概念:一个二进制位称之为bit,一个比特位,简称为位。bit位是计算机数据存储的最小数据单元。1bit位只有0或者1两种状态。我们常说的8位数据,16位数据,32位数据实际上就是指这个数据可以由那么多个二进制位组成。 3.数据位简介3.1 八位数据byte字节
8位数据由8个二进制位组成,每一位都有0或者1两种状态,则8位数据最多可以表示的数值个数为2^8 = 256个数值(高中排列组合的知识)。对于无符号的数据其范围就是0到255,对于有符号数据其范围就是-128-127这个数值范围(-2^7-(2^7-1))。关于有符号无符号的数值的介绍见下面。一般我们将8位数据称之为byte字节,1个8位数据称之为1个字节。有些编程语言中,1字节表示的就是字符型数据char。 3.2十六位数据(短整型)
从右到左分别是bit0-bit15,16位数据一般我们称为1个字(word),由两个字节组成(2个8位数据)。表示的整型数值个数2^16 = 65536个数据,对于无符号数据而言,其数值范围是0到65535,对于有符号数据而言其数值范围是-32768-32767(中间包括0)也就是-2^15-(2^15-1)。一般称16位数据为1个字,在一些编程语言中将16位整型数据当成短整型数据使用(如C语言,代表short int) 3.3 三十二位数据(浮点型或者长整型)
从右到左分别是bit0到bit31位数据,我们一般把32位数据称为双字数据(double word)。由4个字节组成(4个8位数据)。在程序中单精度浮点型数据是32位的长整型数据也是32位。(还有那种long int 64位整型数据,double双精度浮点型数据)。32位数据的数值范围进一步扩大,无符号整型数据范围:0-(2^32-1),有符号数据-2^31 到 2^31-1. 关于浮点型深入知识请点击:【极光课堂】浮点数在内存中的存储方式【点击阅读原文,可打开此链接】 4.有符号数和无符号数(正-零-负)4.1无符号数对于无符号数据,全部的二进制位都表示数据。是正整数 4.2有符号数二进制的最高位表示符号位,其剩余位表示正常数值位。这里我懒得写的,从网上找了一下这部分的知识,是C语言的不过都是通用的。 下面引用网上关于补码的知识点:
|
|
来自: 金玉满堂jjnla8 > 《其他PLC》