• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
sjm213
有小知識,無大學(xué)問。
級別: 論壇版主

精華主題: 7 篇
發(fā)帖數(shù)量: 5196 個
工控威望: 7419 點
下載積分: 158550 分
在線時間: 3152(小時)
注冊時間: 2007-11-21
最后登錄: 2024-11-06
查看sjm213的 主題 / 回貼
樓主  發(fā)表于: 2013-03-18 17:44
一、數(shù)制與碼制

1- 基本概念
不同的數(shù)碼可以用來表示數(shù)量的不同大小。用數(shù)碼表示數(shù)量大小時,僅用一位數(shù)碼往往不夠用,因此經(jīng)常需要用進位計數(shù)制的方法組成多位數(shù)碼使用。
把多位數(shù)碼中每一位的構(gòu)成方法以及從低位到高位的進位規(guī)則稱為數(shù)制。在數(shù)字電路中經(jīng)常使用的計數(shù)進制有十進制、二進制和十六進制。有時也用到八進制。
不同的數(shù)碼不僅可以用來表示數(shù)量的不同大小,而且可以用來表示不同的事物或事物的不同狀態(tài)。在用于表示不同事物的情況下,這些數(shù)碼已經(jīng)不再具有表示數(shù)量大小的含義了,它們只是不同事物的代號而已。這些數(shù)碼稱為代碼。
為了便于記憶和查找,在編制代碼時總要遵循一定的規(guī)則,這些規(guī)則就稱為碼制。

2- 幾種常用的數(shù)制



4. 十六進制數(shù)(Hexadecimal)
十六進制數(shù)的進位規(guī)則是“逢十六進一” ,其進位基數(shù)R=16,采用的16個數(shù)碼為0、 1、 2、…、 9、A、 B、 C、 D、 E、 F。 符號A~F分別代表十進制數(shù)的10~15。每位的權(quán)是16的冪。
任何一個十六進制數(shù), 可以表示為:
  

5. 不同進制數(shù)的對照表

sjm213
有小知識,無大學(xué)問。
級別: 論壇版主

精華主題: 7 篇
發(fā)帖數(shù)量: 5196 個
工控威望: 7419 點
下載積分: 158550 分
在線時間: 3152(小時)
注冊時間: 2007-11-21
最后登錄: 2024-11-06
查看sjm213的 主題 / 回貼
1樓  發(fā)表于: 2013-03-18 17:46
3- 不同數(shù)制之間的轉(zhuǎn)換
1. 其它進制轉(zhuǎn)換為十進制
方法是:將其它進制按權(quán)位展開,然后各項相加,就得到相應(yīng)的十進制數(shù)。
例1: N=(10110.101)B=(?)D
按權(quán)展開N=1*24+0*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3
         =16+4+2+0.5+0.125
=(22.625)D
例2: N=(532.8)H=(?)D
按權(quán)展開N=5*162+3*161+2*160+8*16-1
         =1280+48+2+0.5
=(1330.5)D
2. 將十進制轉(zhuǎn)換成其它進制  
方法是:將十進制數(shù)分整數(shù)部分和小數(shù)部分分別計算。
整數(shù)部分:(基數(shù)除法)
把我們要轉(zhuǎn)換的數(shù)除以新的進制的基數(shù),把余數(shù)作為新進制的最低位;
把上一次得的商在除以新的進制基數(shù),把余數(shù)作為新進制的次低位;
繼續(xù)上一步,直到最后的商為零,這時的余數(shù)就是新進制的最高位。


注意:小數(shù)部分取整的過程,不一定能使最后乘積為0,因此轉(zhuǎn)換值存在誤差。通常在二進制小數(shù)的精度已達到預(yù)定的要求時,運算便可結(jié)束。


3. 二進制與八進制、十六進制之間的轉(zhuǎn)換
八進制數(shù)和十六進制數(shù)的基數(shù)分別為8=23,16=24, 所以三位二進制數(shù)恰好相當(dāng)一位八進制數(shù),四位二進制數(shù)相當(dāng)一位十六進制數(shù),它們之間的相互轉(zhuǎn)換是很方便的。
二進制數(shù)轉(zhuǎn)換成八進制數(shù)的方法是從小數(shù)點開始,分別向左、向右,將二進制數(shù)按每三位一組分組(不足三位的補0),然后寫出每一組等值的八進制數(shù)。
二進制數(shù)轉(zhuǎn)換成十六進制數(shù)的方法和二進制數(shù)與八進制數(shù)的轉(zhuǎn)換相似,從小數(shù)點開始分別向左、向右將二進制數(shù)按每四位一組分組(不足四位補0),然后寫出每一組等值的十六進制數(shù)。
例:

本帖最近評分記錄:
  • 下載積分:+5(銘杰工控) 好貼!
    sjm213
    有小知識,無大學(xué)問。
    級別: 論壇版主

    精華主題: 7 篇
    發(fā)帖數(shù)量: 5196 個
    工控威望: 7419 點
    下載積分: 158550 分
    在線時間: 3152(小時)
    注冊時間: 2007-11-21
    最后登錄: 2024-11-06
    查看sjm213的 主題 / 回貼
    2樓  發(fā)表于: 2013-03-18 17:48
    4- 二進制算術(shù)運算
    當(dāng)兩個數(shù)碼分別表示兩個數(shù)量大小時,它們可以進行數(shù)量間的加、減、乘、除等運算。這種運算稱為算術(shù)運算。
    因電腦和數(shù)字設(shè)備普遍采用二進制運算,本節(jié)只探討二進制的算術(shù)運算。
    1. 二進制算術(shù)運算的特點
    二進制算術(shù)運算和十進制算術(shù)運算規(guī)則基本相同,區(qū)別是“逢二進一”。


    由上圖可見二進制的乘法和除法有以下特點:
    二進制的乘法運算可以通過若干次的“被乘數(shù)(或0)左移1位”和“被乘數(shù)(或0)與部分積相加”這兩種操作完成;
    二進制數(shù)的除法運算能通過若干次的“除數(shù)右移1位”和“從被除數(shù)或余數(shù)中減去除數(shù)”這兩種操作完成。
    如果我們能設(shè)法將減法操作轉(zhuǎn)化為某種形式的加法操作,那么加、減、乘、除運算就全部可以用"移位"和"相加"兩種操作實現(xiàn)了。為了解決這個問題,計算機引入了原碼、反碼和補碼的概念。
    2. 原碼、反碼、補碼和補碼運算
    二進制數(shù)的正、負表示方法通常采用的是在二進制數(shù)的前面增加一位符號位。這種形式的數(shù)稱為原碼。符號位為0表示這個數(shù)是正數(shù),符號位為1表示這個數(shù)是負數(shù)。其余各位表示數(shù)值。
    在做減法運算時,如果兩個數(shù)是用原碼表示的,則首先需要比較兩數(shù)絕對值的大小,然后以絕對值大的一個作為被減數(shù)、絕對值小的一個作為減數(shù),求出差值,并以絕對值大的一個數(shù)的符號作為差值的符號。
    這個操作過程比較麻煩,而且需要使用數(shù)值比較電路和減法運算電路。如果用兩數(shù)的補碼相加代替上述減法運算,則計算過程中就無需使用數(shù)值比較電路和減法運算電路了,從而使減法運算器的電路結(jié)構(gòu)大為簡化。
    補碼的原理可參考其他電子書籍,正負數(shù)的反碼和補碼的計算原則如下:
    反碼:正數(shù)的反碼等于原碼,負數(shù)的反碼:符號位不變,以下各位按位取反。
    補碼:正數(shù)的補碼等于原碼,負數(shù)的補碼:符號位不變,以下各位按位取反,最后加1。一個數(shù)補碼的補碼即為其原碼。
    例:帶符號位二進制數(shù)00011010(+26)、10011010(-26)、00101101(+45)、和10101101(-45)的反碼和補碼。



    在計算機系統(tǒng)中,數(shù)值一律用補碼來表示(存儲)。
    補碼的優(yōu)點主要有:
        使符號位能與數(shù)值位部分一起參加運算,從而簡化運算規(guī)則;
        使減法運算轉(zhuǎn)換為加法運算,從而簡化計算機中運算電路的設(shè)計;
        兩個用補碼表示的數(shù)相加時,如果最高位(符號位)有進位,則進位被舍棄;
        補碼轉(zhuǎn)換為對應(yīng)的十進制數(shù)時正負數(shù)規(guī)則一樣 ;
        0的補碼是唯一的。如0的5位補碼是00000。
    sjm213
    有小知識,無大學(xué)問。
    級別: 論壇版主

    精華主題: 7 篇
    發(fā)帖數(shù)量: 5196 個
    工控威望: 7419 點
    下載積分: 158550 分
    在線時間: 3152(小時)
    注冊時間: 2007-11-21
    最后登錄: 2024-11-06
    查看sjm213的 主題 / 回貼
    3樓  發(fā)表于: 2013-03-18 17:51
    5- 幾種常見的編碼
    1. 十進制編碼
    用四位二進制碼的10 種組合表示十進制數(shù)0~9,簡稱BCD碼(Binary Coded Decimal)。   這種編碼至少需要用四位二進制碼元,而四位二進制碼元可以有 16 種組合。當(dāng)用這些組合表示十進制數(shù)0~9時, 有六種組合不用。由 16 種組合中選用 10 種組合。
    8421BCD碼是最基本和最常用的BCD碼, 它和四位自然二進制碼相似, 各位的權(quán)值為8、 4、 2、 1, 故稱為有權(quán)BCD碼。和四位自然二進制碼不同的是, 它只選用了四位二進制碼中前 10 組代碼,即用0000~1001分別代表它所對應(yīng)的十進制數(shù), 余下的六組代碼不用。
    下表為其他常用BCD碼,但在PLC中一般BCD碼僅指8421碼。


    2. 格雷碼(Gray Code)
    格雷碼又稱循環(huán)碼。每一位的狀態(tài)變化都按一定的順序循環(huán)。如果從0000開始,最右邊一位的狀態(tài)按0110順序循環(huán)變化,右邊第二位的狀態(tài)按00111100順序變化,右邊第三位按0000111111110000順序循環(huán)變化。
    它的特點是:自右向左,每一位狀態(tài)狀態(tài)中連續(xù)的0、1數(shù)目增加一倍;編碼順序依次變化時,相鄰兩個代碼之間只有一位發(fā)生變化。
    格雷碼消除了隨機取數(shù)時出現(xiàn)重大錯誤的可能,其反射和自補特性使得對其進行求反操作也非常方便,所以,格雷碼屬于一種可靠性編碼,是一種錯誤最小化的編碼方式,因此格雷碼在通信和測量技術(shù)中得到廣泛應(yīng)用。工控行業(yè)中格雷碼的典型應(yīng)用是絕對值編碼器。


    二進制格雷碼(GRY)與自然二進制碼(BIN)的互換:
    ①自然二進制碼轉(zhuǎn)換成二進制格雷碼
    自然二進制碼轉(zhuǎn)換成二進制格雷碼,其法則是保留自然二進制碼的最高位作為格雷碼的最高位,而次高位格雷碼為二進制碼的高位與次高位相異或,而格雷碼其余各位與次高位的求法相類似。


    3. 美國信息交換標準代碼(ASCⅡ)
    ASCII碼是一組7位二進制代碼,主要用于表示各種字符。ASCII碼共128個,其中包括表示0~9的十個代碼,表示大、小英文字母的52個代碼,32個表示各種符號的代碼及34個控制碼。它可以用于通訊信息的傳輸和控制。

    客居他鄉(xiāng)
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 363 個
    工控威望: 456 點
    下載積分: 1117 分
    在線時間: 146(小時)
    注冊時間: 2010-07-23
    最后登錄: 2023-03-28
    查看客居他鄉(xiāng)的 主題 / 回貼
    4樓  發(fā)表于: 2013-03-18 22:12
    謝謝。學(xué)習(xí)了。
    loio
    級別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 168 個
    工控威望: 1305 點
    下載積分: 95627 分
    在線時間: 341(小時)
    注冊時間: 2008-04-23
    最后登錄: 2019-09-21
    查看loio的 主題 / 回貼
    5樓  發(fā)表于: 2013-04-02 20:21
    學(xué)習(xí),謝謝!版主辛苦了
    ymr78419972
    宿命的輪回注定了要讓我們?nèi)プ分鹉切╇y以企及卻又十分向往的美麗
    級別: 工控俠客
    精華主題: 0
    發(fā)帖數(shù)量: 588 個
    工控威望: 2719 點
    下載積分: 16620 分
    在線時間: 270(小時)
    注冊時間: 2009-05-10
    最后登錄: 2023-12-16
    查看ymr78419972的 主題 / 回貼
    6樓  發(fā)表于: 2013-04-03 16:57
              
    山河今仍在,壯志在何方?
    feng-xing
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 90 個
    工控威望: 222 點
    下載積分: 4364 分
    在線時間: 56(小時)
    注冊時間: 2012-07-09
    最后登錄: 2020-02-18
    查看feng-xing的 主題 / 回貼
    7樓  發(fā)表于: 2013-04-03 19:03
    學(xué)習(xí)了,下面例題中好像少了乘號。3- 不同數(shù)制之間的轉(zhuǎn)換
    1. 其它進制轉(zhuǎn)換為十進制
    方法是:將其它進制按權(quán)位展開,然后各項相加,就得到相應(yīng)的十進制數(shù)。
    例1: N=(10110.101)B=(?)D
    按權(quán)展開N=1*24+0*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3
             =16+4+2+0.5+0.125
    =(22.625)D
    例2: N=(532.8)H=(?)D
    按權(quán)展開N=5*162+3*161+2*160+8*16-1
             =1280+48+2+0.5
    =(1330.5)D
    銘杰工控
    溫嶺市正凱自動化設(shè)備有限公司
    級別: 網(wǎng)絡(luò)英雄

    精華主題: 0
    發(fā)帖數(shù)量: 1977 個
    工控威望: 6488 點
    下載積分: 966 分
    在線時間: 1079(小時)
    注冊時間: 2009-01-13
    最后登錄: 2024-11-04
    查看銘杰工控的 主題 / 回貼
    8樓  發(fā)表于: 2013-04-03 19:58
    好貼要頂一下
    溫嶺市正凱自動化設(shè)備有限公司  15057679726
    全自動換箱機 催化劑再生、處置智能裝備 MES軟件 WCS軟件 注塑工廠整體智能化解決方案    重載桁架機械手
    sjm213
    有小知識,無大學(xué)問。
    級別: 論壇版主

    精華主題: 7 篇
    發(fā)帖數(shù)量: 5196 個
    工控威望: 7419 點
    下載積分: 158550 分
    在線時間: 3152(小時)
    注冊時間: 2007-11-21
    最后登錄: 2024-11-06
    查看sjm213的 主題 / 回貼
    9樓  發(fā)表于: 2013-04-03 20:59
    引用
    引用第7樓feng-xing于2013-04-03 19:03發(fā)表的  :
    學(xué)習(xí)了,下面例題中好像少了乘號。3- 不同數(shù)制之間的轉(zhuǎn)換
    1. 其它進制轉(zhuǎn)換為十進制
    方法是:將其它進制按權(quán)位展開,然后各項相加,就得到相應(yīng)的十進制數(shù)。
    例1: N=(10110.101)B=(?)D
    按權(quán)展開N=1*24+0*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3
    .......

    這應(yīng)該用圖片傳上來,實際應(yīng)該是n次方,請注意:
    例1: N=(10110.101)B=(?)D
    按權(quán)展開N=1*24+0*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3
             =16+4+2+0.5+0.125
    =(22.625)D
    例2: N=(532.8)H=(?)D
    按權(quán)展開N=5*162+3*161+2*160+8*16-1
             =1280+48+2+0.5
    =(1330.5)D
    bcyplc
    級別: *
    精華主題: * 篇
    發(fā)帖數(shù)量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看bcyplc的 主題 / 回貼
    10樓  發(fā)表于: 2013-04-08 09:18
    很實用的基礎(chǔ)知識,學(xué)習(xí)了。謝謝!
    ying-feng
    一般情況下人的眼睛是黑的,心是紅的;要是眼睛變紅了心就會變黑
    級別: 家園?
    精華主題: 0
    發(fā)帖數(shù)量: 460 個
    工控威望: 648 點
    下載積分: 2649 分
    在線時間: 182(小時)
    注冊時間: 2011-08-12
    最后登錄: 2024-05-04
    查看ying-feng的 主題 / 回貼
    11樓  發(fā)表于: 2013-04-08 09:46
    非常感謝,我頂一下
    • «
    • 1
    • 2
    • »
    • Pages: 1/2     Go