工控產品?進制轉換了解一下

初學PLC的同學可能還是不瞭解數據的轉換,通俗的講就是電信號只能識別0和1,但是我們在生活中用的最多的就是阿拉伯數字,這些數字就是十進制的,逢十進一,但是在工業產品裡比如PLC,就不能識別阿拉伯數字,那麼我們想要控制自動化設備怎麼辦,只能將我們常用的十進制轉換為2進制數0和1,這樣輸入到PLC裡面,就能夠識別到。今天小編詳細的介紹一下進制的轉換。

學習PLC/工控產品?進制轉換了解一下


一、什麼是進位計數制

數制也稱計數制,是指用一組固定的符號和統一的規則來表示數值的方法。按進位的原則進行計數的方法,稱為進位計數制。比如,在十進位計數制中,是按照“逢十進一”的原則進行計數的。

常用進位計數制:

1、十進制(Decimal notation),有10個基數:0 ~~ 9 ,逢十進一;

學習PLC/工控產品?進制轉換了解一下


2、二進制(Binary notation),有2 個基數:0 ~~ 1 ,逢二進一;

學習PLC/工控產品?進制轉換了解一下


3、八進制(Octal notation),有8個基數:0 ~~ 7 ,逢八進一;

學習PLC/工控產品?進制轉換了解一下


4、十六進制數(Hexdecimal notation),有16個基數:0 ~~ 9,A,B,C,D,E,F (A=10,B=11,C=12,D=13,E=14,F=15) ,逢十六進一。

學習PLC/工控產品?進制轉換了解一下


二、進位計數制的基數與位權

"基數"和"位權"是進位計數制的兩個要素。

1、基數:

所謂基數,就是進位計數制的每位數上可能有的數碼的個數。例如,十進制數每位上的數碼,有"0"、"1"、"3",…,"9"十個數碼,所以基數為10。

2、位權:

所謂位權,是指一個數值的每一位上的數字的權值的大小。例如十進制數4567從低位到高位的位權分別為100、101、102、103。因為:

4567=4x103+5x 102+6x 101 +7x100

3、數的位權表示:

任何一種數制的數都可以表示成按位權展開的多項式之和。

比如:十進制數的435.05可表示為:

435.05=4x102+3x 101+5x100+0x10-1 +5x 10-2

位權表示法的特點是:每一項=某位上的數字X基數的若干冪次;而冪次的大小由該數字所在的位置決定。

學習PLC/工控產品?進制轉換了解一下


三、二進制數

計算機中為何採用二進制:二進制運算簡單、電路簡單可靠、邏輯性強。

1、定義:

按“逢二進一”的原則進行計數,稱為二進制數,即每位上計滿2 時 向高位進一。

2、特點:

每個數的數位上只能是0,1兩個數字;二進制數中最大數字是1,最小數字是0;基數為2;

比如:10011010與00101011是兩個二進制數。

3、二進制數的位權表示:

(1101.101)2=1x23+1x 22+0x 21+1x 20+1x2-1 +0x 2-2+1x2-3

4、二進制數的運算規則:

加法運算

① 0+0=0 ③ 1+1=10

② 0+1=1+0=1

乘法運算

① 0×0=0 ③ 1×1=1

② 0×1=1×0=0

四、八進制數

1、定義:

按“逢八進一”的原則進行計數,稱為八進制數,即每位上計滿8時向高位進一。

2、特點:

每個數的數位上只能是0、1、2、3、4、5、6、7八個數字;八進制數中最大數字是7,最小數字是0;基數為8;

比如:(1347)8與(62435)8是兩個八進制數。

3、八進制數的位權表示:

(107.13)8=1x 82+0x 81+7x 80+1x8-1 +3x 8-2

五、十六進制數

1、定義:

按“逢十六進一”的原則進行計數,稱為十六進制數,即每位上計滿16時向高位進一。

2、特點:

每個數的數位上只能是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F十六個數碼;十六進制數中最大數字是F,即15,最小數字是0;基數為16;

比如:(109)16與(2FDE)16是兩個十六進制數。

3、十六進制數的位權表示:

(109.13)16=1x 162+0x161+9x 160+1x16-1 +3x 16-2

(2FDE)16=2x 163+15x 162+13x 161+14x 160

六、常用計數制間的對應關係

二進制數、八進制數、十六進制數及十進制數是現代數字系統中常用的四種數制,這幾種進位制計數制之間的對應關係如表1所列。

表1 常用計數制數的表示方法

十進制數

二進制數

八進制數

十六進制數

0 0 0 0

1 1 1 1

2 10 2 2

3 11 3 3

4 100 4 4

5 101 5 5

6 110 6 6

7 111 7 7

8 1000 10 8

9 1001 11 9

10 1010 12 A

11 1011 13 B

12 1100 14 C

13 1101 15 D

14 1110 16 E

15 1111 17 F

16 10000 20 10

17 10001 21 11

18 10010 22 12

19 10011 23 13

20 10100 24 14

32 100000 40 20

50 110010 62 32

60 111100 74 3C

64 1000000 100 40

100 1100100 144 64

255 11111111 377 FF

1000 1111101000 1750 3E8

七、數制間的轉換

1、十進制數轉換成非十進制數

(1)十進制整數轉換成非十進制整數

為什麼要進行數制間的轉換?

將數由一種數制轉換成另一種數制稱為數制間的轉換。

因為日常生活中經常使用的是十進制數,而在計算機中採用的是二進制數。所以在使用計算機時就必須把輸入的十進制數換算成計算機所能夠接受的二進制數。計算機在運行結束後,再把二進制數換算成人們所習慣的十進制數輸出。這兩個換算過程完全由計算機自動完成。

轉換方法

十進制整數化為非十進制整數採用“餘數法”,即除基數取餘數。

把十進制整數逐次用任意十制數的基數去除,一直到商是0 為止,然後將所得到的餘數由下而上排列即可。

十進制小數轉換成非十進制小數轉換方法

十進制小數轉換成非十進制小數採用“進位法”,即乘基數取整數。

把十進制小數不斷的用其它進制的基數去乘,直到小數的當前值等於0或滿足所要求的精度為止,最後所得到的積的整數部分由上而下排列即為所求。

2、非十進制數轉換成十進制數

非十進制數轉換成十制數採用“位權法”,即把各非十進制數按位權展開,然後求和。

3、二、八、十進制數之間轉換

(1)二進制 數與八進制數之間的轉換轉換方法

把二進制數轉換為八進制數時,按“三位並一位”的方法進行。

以小數點為界,將整數部分從右向左每三位一組,最高位不足三位時,添0補足三位;小數部分從左向右,每三位一組,最低有效位不足三位時,添0補足三位。然後,將各組的三位二進制數按權展開後相加,得到一位八進制數。

將八進制數轉換成二進數時,採用“一位拆三位”的方法進行。

即 把八進制數每位上的數用相應的三位二進制數表示。

二進制數與十六進制數之間的轉換轉換方法

a、把二進制數轉換為十六進制數時,按“四位並一位”的方法進行。

以小數點為界,將整數部分從右向左每四位一組,最高位不足四位時,添0補足四位;小數部分從左向右,每四位一組最低有效位不足四位時,添0補足四位。然後,將各組的四位二進制數按權展開後相加,得到一位十六進制數。

b、將十六進制數轉換成二進數時,採用“一位拆四位”的方法進行。

即 把十六進制數每位上的數用相應的四位二進制數表示。

瞭解這些數據後再學習PLC編程會輕鬆很多。學習的路上很艱辛,每天學習一點,日積月累總有學會的一天,後期繼續給大家分享PLC機器人知識。


分享到:


相關文章: