干货 | PLC中常用数制及如何转换

数制也称计数制,是用一组固定的符号和统一的规则来表示数值的方法。任何一个数制都包含两个基本要素:基数和位权。
基数:数制所使用数码的个数。例如,二进制的基数为2;十进制的基数为10。
位权:数制中某一位上的1所表示数值的大小(所处位置的价值)。例如,十进制的123,1的位权是100,2的位权是10,3的位权是1。二进制中的 1011 ,左起第一个1的位权是8,0的位权是4,第二个1的位权是2,第三个1的位权是1。
plc中常用的数制有:十进制,二进制,十六进制,八进制等。此外还有bcd码和ascii码也偶尔会使用。
十进制(decimalnotation):如1234=1*103+2*102+3*101+4*100,逢十进一,基数为10,单个数是0-9,每位的系数乘于基数(10)的n次方,n为其所处的位数。
二进制(binarynotation):如1101=1*23+1*22+0*21+1*20=13,逢二进一,基数为2,单个数只有0和1, 每位的系数乘于基数(10)的n次方,n为其所处的位数。从第3位至0分别为8,4,2,1,所以二进制也成8421码。如果表示有符号数,则用最高位表示符号,0为正数1为负数。正数以二进制原码表示;负数则以补码存储,即将原码逐位取反再加1。
十六进制(hexdecimalnotation):逢16进1的进位制。一般用数字0到9和字母a到f(或a~f)表示,其中:a~f表示10~15,这些称作十六进制数字。
八进制(octalnotation):逢八进一,单个数有0-7,在plc中常用于编址,数据运算应用较少。
bcd码:(binary-coded decimal‎)亦称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。通常时钟采用bcd码存储。
ascii:(american standard code for information interchange:美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的系统,并等同于国际标准iso/iec 646。plc中数据存储只能以0和1形式,其它数据可通过进制转换成二进制,但是字母和一些特殊符号用什么表示则需要约定一套转换规则,于是美国有关的标准化组织就出台了ascii编码。
浮点数(float):又称实数(real),浮点数是属于有理数中某特定子集的数的数字表示,在计算机中用于近似表示任意某个实数。具体来说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学计数法。
在二进制科学表示法中,s=m×2^n 主要由三部分构成:符号位+阶码(n)+尾数(m)。对于float型数据,其二进制有32位,其中符号位1位,阶码8位,尾数23位。符号位:0表示正,1表示负。阶码:这里阶码采用移码表示,对于float型数据其规定的偏置量为127,阶码有正有负,对于8位二进制,则其表示范围为−128~127。比如,对于float型数据,若阶码的真实值为2,则加上127后为129,其阶码表示形式为10000010。尾数:有效数字位,即部分二进制位(小数点后面的二进制位),因为规定m的整数部分恒为1,所以这个1就不进行存储了。下面举例说明:
float型数据125.5转换为标准浮点格式,125的二进制表示形式为1111101,小数部分表示为二进制为1(小数部分乘以2,小于1则为0,大于1则为1,小数继续乘以2,直到小数部分为0为止),则125.5二进制表示为1111101.1,由于规定尾数的整数部分恒为1,则表示为1.1111011*2^6,阶码为6,加上127为133,则表示为10000101,而对于尾数将整数部分1去掉,为1111011,在其后面补0使其位数达到23位,则为11110110000000000000000。则其二进制表示形式为:0 10000101 11110110000000000000000
那么这些进制之间是如何转换呢?
1.十进制转二进制
方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。
(具体用法如下图)
2.二进制转十进制
方法为:把二进制数按权展开、相加即得十进制数。
(具体用法如下图)
3.二进制转八进制
方法为:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)。
(具体用法如下图)
4.八进制转成二进制
方法为:八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零。
(具体用法如下图)
5.二进制转十六进制
方法为:与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(注意事项,4位二进制转成十六进制是从右到左开始转换,不足时补0)。
(具体用法如下图)
6.十六进制转二进制
方法为:十六进制数通过除2取余法,得到二进制数,对每个十六进制为4个二进制,不足时在最左边补零。
(具体用法如下图)
7.十进制转八进制或者十六进制有两种方法
第一:间接法—把十进制转成二进制,然后再由二进制转成八进制或者十六进制。这里不再做图片用法解释。
第二:直接法—把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为止。
(具体用法如下图)
8.八进制或者十六进制转成十进制
方法为:把八进制、十六进制数按权展开、相加即得十进制数。
(具体用法如下图)
9.bcd码转十进制:因为bcd码是用四位二进制表示一位十进制数,所以转换方法类似二进制转十六进制“取四合一”法,四位组合后转成十进制得到的就是十进制。
以上介绍了plc中常用进制及相互转换方法,意在让初学者理解进制含义及转换规律。真正使用时可利用计算机提供的程序员型计算器轻松运算出来。

荣耀X40i采用直角边框和直屏设计
短路对锂离子电池的影响
对话:FAKRA连接器自动化生产现状与设备国产替代
东大与联想研发“穿戴式智能心电衣”,年底前公测
sata硬盘是什么意思_sata硬盘跳线设置
干货 | PLC中常用数制及如何转换
DeepMind在伦敦向世界展示了他们的最新成果——星际争霸2人工智能AlphaStar
【国产化】Firefly推出全国产化核心板
魅蓝6评测 该有的都有了
2017年人工智能大事件 你想了解的都在这里
苹果、 Google牵头, 5G 后的下一个竞争点是相机应用?
SIAF 2023更多优质展商确认参展 全面聚焦前沿自动化技术
多屏显示讲解
8月22日|泰克云上大讲堂—半导体可靠性热载流子效应测试详解
设计一个节约端口线器件的新型键盘的详细资料概述
pcb打样对工艺有哪些要求
热敏电阻符号与压敏电阻符号相同吗
微软迫切希望IE用户尽快抛弃IE转到Edge浏览器上
AMD将推ARM架构服务器处理器 应对PC市场下滑
怎么选择合适的户用光伏逆变器?