找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 2731|回復(fù): 1
收起左側(cè)

十進(jìn)制轉(zhuǎn)bcd碼

[復(fù)制鏈接]
ID:93401 發(fā)表于 2017-9-4 17:19 | 顯示全部樓層 |閱讀模式
int a,b;
b=(a/10)<<|(a%10)


回復(fù)

使用道具 舉報(bào)

ID:111587 發(fā)表于 2017-9-4 22:49 | 顯示全部樓層
int a b;// a為輸出 b為輸入0-9
char temp_1, i  ;// 中間運(yùn)算值
temp= b%10; //對(duì)10取余,查看個(gè)位數(shù)字 舉例 b=7=1+2+4
for(i=0;i<4;i++){
temp_1=b%2 ;  //對(duì)2取余.處理b中大于等于0小于等于1的部分,例 7%2=1,也就是轉(zhuǎn)換出來的最低位是1,我們需要把它放到最低位
temp_1<<3; //經(jīng)過上一次運(yùn)算,中間值是0000 0001,向左位移3位得到0000 1000
a>>1;//把上面的0000 1000中的1填到a的第5位,這里把a(bǔ)右位移1,騰出位置,放數(shù)值
a=a|temp_1; //a與這個(gè)值進(jìn)行或運(yùn)算,a的第5位和temp_1的值相同
b=b/2;// 把b的值縮小2倍,這樣可以把大于等于1小于2的部分,縮小到大于等于0小于等于1,例,7=1+2+4,7/2=0+1+2(由于取整,第一個(gè)1/2的運(yùn)算變成0了)
//2^4=16>10,反復(fù)運(yùn)行4次,可以把10以內(nèi)的數(shù)字轉(zhuǎn)化成8421碼
}


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表