PLC编程中的进制数该如何表示?相互之间又是如何转换的?
今天给大家讲一下有关数制、码制、基本逻辑运算等数字电路基本知识。这些知识贯穿在所有的数字电子技术中,包括工业自动化控制技术,例如;PLC、单片机、单板工控机、变频器、伺服、步进等控制技术中,我们要求大家一定要学好这些基本知识及其应用。
学习这些知识不需要高深的数理知识,初中以上水平就可以理解掌握,只要努力学习就行。
数制的知识要求掌握2、10、16进制数的表示和它们相互间的转换。码制的知识要求掌握各种码制的特点及其应用。基本逻辑运算知识要求掌握基本逻辑运算的关系,表示及与电路间的联系。
一、数制
数制,就是数的计数方法,也就是数的进位法。
在数字电子技术中,数制是必须掌握的基础知识。
二、数制三要素
数制是指计算数的方法。其基本内容有二个,一个是如何表示一个数,一个是如何表示数的进位。公元400年,印度数学家最早提出了十进制计数系统,当然,这种计数系统与人的手指有关。这也是很自然的事,这种计数系统(就是数制)的特点是逢十进一,有10个不同的数码表示数(也就是0~9个阿拉伯数字),我们把这个计数系统叫做十进制。
十进制计数内容已经包含了数制的三要素:基数、位权、复位和进位。下面我们就以十进制为例来讲解数制的三要素。
下面是一个十进制表示的数:
这是一个十进制的数:6505,是一个四位数。
其中,6、5、0是它的数码,也叫数符。我们知道:十进制数有10个数码。0~9。我们把这10个数码叫做10进制数的基数。基数即表示了数制所包含数码的个数,同时也包含了数制的进位,即逢十进一。N进制必须有n个数码。
我们把这四位数的位分别以b0位,b1位,b2位,b3位表示数码所在的位。(也即我们日常所说的个位,十位,百位,千位)。
注意:我们规定最右位(个位)为b0位,然后依次往左为b1,b2。。。。。。位。我们会发现b2位的5和b0位的5虽然都是数码5,但他们表示的数值是不一样的。b2位的5表示500,b0位的5只表示5,为什么呢?这是因为不同的位的位值是不一样的,位值又叫位权。
位权是数制的三要素之一,它表示数码所在位的值。位权一般是基数的正整数幂,从0开始,按位递增。b0位位权为
,b1位位权为
。。。以次类推。N进制的位权为
当数中某一位(例如b0位)到达最大数码值后,必须产生复位和进位的运转。当b0数到9(最大数码)后则b0位会变为0.并向b1位进1。复位和进位是数制必须的运算处理。
我们把基数,位权,进位和复位称之为数制三要素。
一般地说,数制的数值由各位数码乘以位权然后相加得到。即
我们把数制中数的位权最大的有效值(最左边的位)叫做最高有效位MSD(Most Siginfical Digit)。而把最右边的有效位叫做最低有效位LSD(Least Siginfical Digit)。在二进制中,常常把LSD位叫做低位。而把MSD位叫高位。
上面虽然是以十进制来介绍数制的知识的,但是数制的三要素对所有的进制都是适用的。
一个N进制的n位数,则:基数为N,有n个不同的数码,逢N进一,其位权由LSD位到MSD位分别为
当某位计数到最大数码时,该位复位为最小数码,并向上一位进1,而其数值为:
数值=
往期优秀文章回顾:
一个电气新手,我想问PLC电气编程用什么电脑最好?
学习PLC,就要懂得常用进制在PLC编程中的应用
PLC也是一台微电脑,许多功能指令离不开进制转换,同时也是为了增加程序的可读性,想要对PLC进行编程,那么必须得清楚数制的设置以及转化和对应的符号。
当然,人们输入计算机的十进制被转换成二进制进行计算,计算后的结果又由二进制转换成十进制,这都由操作系统自动完成,并不需要人们手工去做。人们通常采用的数制有十进制二进制、八进制和十六进制。
常用进制对应表
常用进制使用场合
二进制只有 0 和 1 两个符号,按照逢二进一的规则运算。0和1用来表示开关量(或称数字量)的两种不同状态,如触点的断开和接通,线圈的得电和失电等。
所有数据的运算、存储都是采用二进制进行
西门子PLC上的输入输出编号是采用八进制方式命名
MODBUS-RTU通信数据发送与接收是采用了十六进制
某变频器的参数地址以十六进制分配
进制之间的相互转换
方法:二进制数从低位到高位(即从右往左)计算,第0位的权值是2的0次方,第1位的权值是2的1次方,第2位的权值是2的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了!
方法:将二进制数从最低位开始( 从右到左 ),以4位二进制数为一组进行分组,最左边不足4位的补零。然后对每组分别运用“8421”法则快速运算。
方法:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。
方法:对于每一位十六进制数,分别运用“8421”法则快速运算,逐位展开成4位二进制数,不足四位的补零,最后最左边的零可省略。
方法:要从右到左用二进制的每个数去乘以16的相应次方,然后这些数字相加就是了。
以上,欢迎动动手分享及收藏!
相关问答
PLC编程中的进制数该如何表示?相互之间又是如何转换的?
PLC也是一台微电脑,许多功能指令离不开进制转换,同时也是为了增加程序的可读性,想要对PLC进行编程,那么必须得清楚数制的设置以及转化和对应的符号。当然,...1...
PLC编程为什么要使用进制法?
在PLC编程中,使用进制法是因为它能够更方便地表示和处理二进制数据。PLC是一种数字电路,其输入和输出信号通常是二进制的,使用进制法可以直接将二进制数表示为...
plc进制转换的简单方法?
PLC进制转换的简单方法是使用内部寄存器按位权值进行转换。具体步骤如下:1.确定需要转换的数值,并将其转换为二进制表示。2.找到对应的内部寄存器,并将其...
plc中常用数制及各进制的转换方法?
你好,在PLC中,常用的数制有二进制、十进制、十六进制。1.二进制转十进制:将二进制数从右往左按位展开,每个位置上的数值乘以2的n次幂(n为位置序号,从0开...
plc为什么要进行进制转换?
PLC(可编程逻辑控制器)通常需要进行进制转换的原因有几个:1.数据传输和处理:PLC通常需要处理和传输各种类型的数据,如二进制、十进制、十六进制等。不同的...
PLC的二进制、十进制、十六进制是什么意思,你怎么看?
朋友们好,我是电子及工控技术,我来回答这个问题。在PLC的编程中我们会经常处理一些数据,这些数据可以用多种进制的形式来表示,我们常用的有二级制的数据、十...
欧姆龙plc里十六进制8714转换成十进制为什么会有两个结果的?
十六进制8714转换成十进制数是34580。用二进制16位可以表示为1000011100010100。但在PLC里16位十进制数范围是-32768~+32767。并且用最高位为1表示负数。....
台达plc程序中怎么把十六进制数变成十进制数啊-懂得
这个不管16进制还是十进制,对于PLC处理来说都是一样的你如果要显示出来,如在触摸屏上显示,只要编辑好你的数据显示器就行了好像台达PLC的返回值都...
学习PLC怎么还要学习计算机的进制?有点懵?
当然要了,PLC实际也是一台微电脑,许多功能指令离不开进制转换,通常用的二进制,八进制,十进制,十六进制后BCD码。当然要了,PLC实际也是一台微电脑,许多功能指...
信捷plc十进制转十六进制编程?
在信捷PLC编程中,将十进制转换为十六进制可以通过一些简单的数学运算实现。以下是一个示例程序,演示如何将一个十进制数转换为十六进制数:lessCopycodeLD...