主頁 > 百科知識(shí) > BCD碼是將十進(jìn)制數(shù)符轉(zhuǎn)換成幾位二進(jìn)制

BCD碼是將十進(jìn)制數(shù)符轉(zhuǎn)換成幾位二進(jìn)制

時(shí)間:2024-12-29 20:20:02 瀏覽量:

轉(zhuǎn)化標(biāo)準(zhǔn)二進(jìn)制方法如下,直接用例子來回答:用BCD碼表示:十位上的十進(jìn)制數(shù)為 2 == BCD碼表示為 0010;個(gè)位上的十進(jìn)制數(shù)9 === BCD碼表示為 1001;所以總的來說 十進(jìn)制數(shù) 29 用BCD碼表示為:0010 1001轉(zhuǎn)換過程:把BCD碼 0010(十進(jìn)制數(shù)為十位上的 2)右移4位(其實(shí)表示當(dāng)作一個(gè)個(gè)位數(shù),或者說單純的數(shù)值),然后乘以10 還原到十進(jìn)制的權(quán)重(因?yàn)檫@個(gè)數(shù)本來表示的就是十進(jìn)制數(shù)中的十位)。

處理完十位上的數(shù),接著處理個(gè)位上的數(shù)。

因?yàn)锽CD碼的權(quán)重和二進(jìn)制的前四位權(quán)重是一樣(2^n,n為位數(shù)),所以直接用前面的十位上的數(shù)加上它就可以了。簡(jiǎn)單點(diǎn)分析:0010(十位上的2 BCD碼表示)× 10 + 1001(個(gè)位上的9 BCD碼表示)= 29的二進(jìn)制數(shù)C代碼表示:#define BCD_TO_BIN(val) ((((val) >> 4) * 10) + ((val)&15))BCD碼是用4位二進(jìn)制數(shù)(各個(gè)位的權(quán)重分別為:8421,所以叫8421碼)來表示一位十進(jìn)制數(shù)。

這里的一位十進(jìn)制數(shù)要特別說明下,一位十進(jìn)制數(shù)只能是 0~9之間的一個(gè)數(shù)值。

比如:6 就是表示一位十進(jìn)制數(shù)6;66則是表示兩位十進(jìn)制數(shù);666則是表示三位十進(jìn)制數(shù)。擴(kuò)展資料:BCD碼的特點(diǎn):

1、8421編碼直觀,好理解。

2、5421碼和2421碼中大于5的數(shù)字都是高位為1,5以下的高位為0。

3、余3碼是8421碼加上3,有上溢出和下溢出的空間。

4、格雷碼相鄰的2個(gè)數(shù)只有一位不同。BCD碼是十進(jìn)制數(shù),而運(yùn)算器對(duì)數(shù)據(jù)做加減運(yùn)算時(shí),都是按二進(jìn)制運(yùn)算規(guī)則進(jìn)行處理的。

這樣,當(dāng)將 BCD碼傳送給運(yùn)算器進(jìn)行運(yùn)算時(shí),其結(jié)果需要修正。修正的規(guī)則是:當(dāng)兩個(gè)BCD碼相加,如果和等于或小于 1001(即十進(jìn)制數(shù)9),不需要修正;如果相加之和在 1010 到1111(即十六進(jìn)制數(shù) 0AH~0FH)之間,則需加 6 進(jìn)行修正;如果相加時(shí),本位產(chǎn)生了進(jìn)位,也需加 6 進(jìn)行修正。

這樣做的原因是,機(jī)器按二進(jìn)制相加,所以 4 位二進(jìn)制數(shù)相加時(shí),是按“逢十六進(jìn)一”的原則進(jìn)行運(yùn)算的,而實(shí)質(zhì)上是 2 個(gè)十進(jìn)制數(shù)相加,應(yīng)該按“逢十進(jìn)一”的原則相加,16 與10相差 6,所以當(dāng)和超過 9或有進(jìn)位時(shí),都要加 6 進(jìn)行修正。

© 轉(zhuǎn)乾企業(yè)管理-上海店鋪裝修報(bào)建公司 版權(quán)所有 | 黔ICP備2023009682號(hào)

免責(zé)聲明:本站內(nèi)容僅用于學(xué)習(xí)參考,信息和圖片素材來源于互聯(lián)網(wǎng),如內(nèi)容侵權(quán)與違規(guī),請(qǐng)聯(lián)系我們進(jìn)行刪除,我們將在三個(gè)工作日內(nèi)處理。聯(lián)系郵箱:303555158#QQ.COM (把#換成@)