餘3碼至8421BCD碼的轉換_8421BCD碼轉換成餘3碼

2020-12-13 電子發燒友

餘3碼至8421BCD碼的轉換_8421BCD碼轉換成餘3碼

發表於 2018-03-02 09:38:39

一:8421BCD碼

二進位編碼的十進位數,簡稱BCD碼(Binarycoded Decimal)。這種方法是用4位二進位碼的組合代表十進位數的0,1,2,3,4,5,6 ,7,8,9 十個數符。最常用的BCD碼稱為8421BCD碼,8.4.2.1 分別是4位二進數的位取值。

將十進位數75.4轉換為BCD碼如:

75.4=(0111 0101.0100)BCD 若將BCD碼1000 0101.0101轉換為十進位數如: (1000 0101.0101)BCD=85.5

注意:同一個8位二進位代碼表示的數,當認為它表示的是二進位數和認為它表示的是二進位編碼的十進位數時,數值是不相同的。

例如:00011000,當把它視為二進位數時,其值為24;但作為2位BCD碼時, 其值為18。

又例如00011100,(這表示8位的二進位數)如將其視為二進位數,其值為28,但不能當成BCD碼,因為在8421BCD碼中,它是個非法編碼 。

右圖為十進位數和8421BCD編碼的對應關係表:

二:餘3碼

由8421碼加3後形成的餘3碼是一種BCD碼,它是由8421碼加3後形成的(即餘3碼是在8421碼基礎上每位十進位數BCD碼再加上二進位數0011得到的)。因為8421碼中無1010~1111這6個代碼,所以餘3碼中無0000~0010、1101~1111這6個代碼。餘3碼不具有有權性,但具有自補性,餘3碼是一種「對9的自補碼」

8421碼是中國大陸的叫法,

即BCD代碼。Binary-Coded Decimal‎,簡稱BCD,稱BCD碼或二-十進位代碼,亦稱二進碼十進數。是一種二進位的數字編碼形式,用二進位編碼的十進位代碼。這種編碼形式利用了四個位元來儲存一個十進位的數碼,使二進位和十進位之間的轉換得以快捷的進行。這種編碼技巧,最常用於會計系統的設計裡,因為會計制度經常需要對很長的數字串作準確的計算。相對於一般的浮點式記數法,採用BCD碼,既可保存數值的精確度,又可免卻使電腦作浮點運算時所耗費的時間。此外,對於其他需要高精確度的計算,BCD編碼亦很常用。

由於十進位數共有0、1、2、……、9十個數碼,因此,至少需要4位二進位碼來表示1位十進位數。4位二進位碼共有2^4=16種碼組,在這16種代碼中,可以任選10種來表示10個十進位數碼,共有N=16!/(16-10)!約等於2.9乘以10的10次方種方案。常用的BCD代碼列於末。

餘3碼至8421BCD碼的轉換

最常用的BCD編碼,就是使用「0」至「9」這十個數值的二進碼來表示。這種編碼方式,在中國大陸稱之為「8421碼」。除此以外,對應不同需求,各人亦開發了不同的編碼方法,以適應不同的需求。這些編碼,大致可以分成有權碼和無權碼兩種:

有權BCD碼,如:8421(最常用)、2421、5421…

無權BCD碼,如:餘3碼、格雷碼…

餘三碼是一種對9的自補代碼,因而可給運算帶來方便。其次,在將兩個餘三碼表示的十進位數相加時,能正確產生進位信號,但對「和」必須修正。修正的方法是:如果有進位,則結果加3;如果無進位,則結果減3。

8421BCD碼轉換成餘3碼

通過WEWB32軟體實驗,輸入BCD碼轉換成餘三碼的邏輯函數為:

輸入埠a,b,c,d,輸出埠e,f,g,h,用G3,G2,G1,G0表示:

G3=A』BC+A』BD+ABC』

G2=A』B』C+A』BC』D』+B』C』D

G1=A』C』D』+A』CD+B』C』D』

G0=A』D』+B』C』D』

有邏輯函數畫出邏輯電路圖如下:

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 8421bcd碼轉換二進位
    8421BCD碼 算機內毫無例外地都使用二進位數進行運算,但通常採用8進位和十六進位的形式讀寫。對於計算機技術專業人員,要理解這些數的含義是沒問題,但對非專業人員卻不那麼容易的。 8421bcd碼轉換二進位 用MSI器件設計。 設兩位8421BCD碼為D7D6D5D4D3D2D1D0轉換後的B碼為B685B4B3B2B1B0則
  • bcd碼和ascii碼的區別
    4位二進位數碼有16種組合,原則上可任選其中的10種作為代碼,分別代表十進位中的0,1,2,3,4,5,6,7,8,9 這十個數符。最常用的BCD碼稱為8421BCD碼,8.4.2.1 分別是4位二進數的位取值。 點擊此處將給出十進位數和8421BCD編碼的對應關係表。   1、BCD碼與十進位數的轉換   BCD碼與十進位數的轉換。
  • 16進位數轉換成8421BCD編碼函數
    1、BCD碼與十進位數的轉換 BCD碼與十進位數的轉換關係很直觀,相互轉換也很簡單,將十進位數75.4轉換為BCD碼:7-》0111,5-》0101,4-》0100所以拼成8421BCD碼的結果是:(0111 0101.0100)BCD;若將BCD碼1000 0101.0101轉換為十進位數:1000-》8,0101-》5,0101-》
  • 16進位數轉換成8421BCD編碼函數
    1、BCD碼與十進位數的轉換 BCD碼與十進位數的轉換關係很直觀,相互轉換也很簡單,將十進位數75.4轉換為BCD碼:7-》0111,5-》0101,4-》0100所以拼成8421BCD碼的結果是:(0111 0101.0100)BCD;若將BCD碼1000 0101.0101轉換為十進位數:1000-》8,0101-》5,0101-》
  • 自學單片機第四十三篇:什麼是8421碼
    我們使用的方法只是把如同:00011101這類的埠數據直接轉換成了16進位,中間是如何轉換的呢,就是程式語言中最常見的二進位轉十六進位,這裡我就用到了進位轉換,二進位轉十六進位,看著就比較麻煩,口算也有一定難度,於是會用些簡便方法,可以快速完成轉換,就是前四個看成一組,後四個看成一組,然後分別處理,我們可以看到0000到1111剛好就是從0到15,直接就可以得到一個十六進位數
  • 四位二進位計數器這樣組成8421BCD碼十進位計數器,原理簡單
    8421BCD碼 十進位計數器是一種最常用的十進位計數器。8421BCD碼十進位計數器如圖所示。8421BCD碼十進位計數器該計數器是一個8421BCD碼異步十進位加法計數器,由4個JK觸發器和一個與非門構成,與非門的輸出端接到觸發器F1、F2的SD非端(置"1」端),輸入端則接到時鐘信號輸入
  • 單字節十六進位整數轉換成單字節BCD碼整數
    打開APP 單字節十六進位整數轉換成單字節BCD碼整數 本站 發表於 2009-01-19 22:53:34 單字節十六進位整數轉換成單字節BCD碼整數  入口條件:待轉換的單字節十六進位整數在累加器A中。
  • 數值計算中Bcd碼校驗電路的分析與設計
    使用者希望微處理器的輸入數據和輸出結果能使用十進位形式表達,而在微處理器內採用二進位表示和處理數據更方便,所以在二者之間的數制轉換是必要的。通常採用兩種方式解決這一問題。  方法1:十--二進位轉換電路將輸入的十進位數據轉換為相應的二進位數據,微處理器內部算術邏輯單元仍然執行二進位數據運算微操作,運算結果再進行二--十進位轉換,將結果以十進位形式輸出。
  • 將一字節壓縮BCD碼轉換為兩個ASCII碼
    題目要求:編制一個完整的程序,將一字節壓縮BCD碼轉換為兩個ASCII碼,並將結果存放在ASC和ASC+1單元,按高位存低地址、低位存高地址的格式存放。解題分析:一字節壓縮BCD碼是兩位0~9的數字,4位二進位數對應一位BCD碼。所以關鍵是要將兩個4位二進位數分離開來。
  • 單字節十六進位整數轉換成單字節BCD碼整數
    打開APP 單字節十六進位整數轉換成單字節BCD碼整數 本站 發表於 2009-01-19 22:53:34 單字節十六進位整數轉換成單字節BCD碼整數  入口條件:待轉換的單字節十六進位整數在累加器A中。
  • S7-200SMART的時間是用BCD碼表示的,什麼是BCDD碼
    這篇文章解決兩個問題:一是西門子PLC S7-200 SMART主模塊內的時鐘如何在程序中讀寫,二是BCD碼及轉換。先說BCD碼,簡單來說BCD碼是用用4位二進位數來表示1位十進位數中的0~9這10個數碼。
  • 十進位餘三碼減法計數器(異步預置數)
    十進位餘三碼減法計數器(異步預置數)
  • 詳談Turbo碼特點及應用分析
    Turbo 碼編碼器是由兩個反饋的系統卷積編碼器通過一個交織器並行連接而成,編碼後的校驗位經過刪餘陣,從而產生不同的碼率的碼字。一個好的刪餘算法應該符合以下幾點要求:  1) 不能刪除信息位.刪除信息位會造成較大的信息損失,從而使誤碼率有較大的損失;  2) 刪餘應該在時間域上均勻進行,刪餘同一時刻所有的比特位會造成此時刻信息損失較大,影響誤碼率;  3) 刪餘應該對於各分量碼均勻進行,從而使信息的損失均勻分布在各分量碼上,避免由於信息損失不均勻導致分量碼解碼性能下降。
  • 「遼事通」健康碼為1800餘萬人服務
    構築電子防線 全國一碼通行 「遼事通」健康碼為1800餘萬人服務1.5億次遼寧省全面推廣「遼事通」健康通行碼進機關、進企業、進學校、進村屯、進社區、進交通樞紐,為快速精準識別風險源、風險點目前,「遼事通」健康通行碼已累計為全省1800餘萬人提供1.5億次賦碼服務。這是6月1日,記者從省營商環境建設局獲悉的。「遼事通」健康通行碼是遼寧省疫情防控期間個人出行的電子憑證,是利用信息技術支持疫情防控的重要措施,是部署在城鄉社區、公共場所的一道看不見的電子防線。
  • 紹興健康碼怎麼申請平臺入口?紹興健康碼顏色標準
    按照全省統一部署,紹興市積極推行「健康碼」暢通人員流動,2月15日,「紹興健康碼」上線啟用。同時,根據疫情防控形勢變化,「紹興健康碼」狀態會動態調整。  浙江新聞+:  紹興市健康碼申請操作手冊  一、申請入口  1、登陸支付寶,搜索紹興市健康碼。  2、支付寶卡包—證件夾—健康碼。  3、支付寶—城市服務(定位相關地市)—紹興健康碼。  註:已申請健康碼查看入口與申請入口一致。
  • 湖北健康碼怎麼申請(平臺) 湖北健康碼審核要多久
    為落實分區分級分類分時差異化防控策略,推進企業復工復產和人員安全有序流動,我省決定開展湖北健康碼發放工作(湖北健康碼綠碼為什麼變灰了?什麼時候能出門),現就有關事項通告如下:  一、健康碼由個人用手機通過「鄂匯辦」APP、國家「網際網路+監管」小程序、支付寶小程序、「鄂匯辦」微信小程序申領,經與全省防疫資料庫比對核驗後,生成專屬二維碼。
  • 特評| 健康碼不能「一碼歸一碼」
    健康碼可以全國互通互認嗎?健康碼會洩露個人信息嗎?疫情之後健康碼何去何從?……近段時間,關於健康碼的疑慮和討論層出不窮,反映出健康碼在現實應用中出現的新問題,在一定程度上影響著健康碼的信度與效度。一張小小的電子健康碼,成為新冠肺炎疫情期間人員流動的「通行證」。通過大數據比對,健康碼可以將個人的健康狀況顯示為不同的顏色,綠碼行、黃碼管、紅碼禁。
  • 廣東居民已恢復辦理赴澳門旅遊籤注,粵康碼和澳康碼轉換操作指引
    辦理赴澳門旅遊籤注的申請人需現場掃描「疫情防控行程卡」小程序碼並向前臺工作人員出示掃描結果。三、此前已申請辦理赴澳門旅遊籤注,因疫情原因暫未領取證件的申請人,近期敬請留意領取通知簡訊或郵寄收件信息。其中,屬國家登記備案人員的,需重新出具人事主管單位意見。