資源描述:
《十進(jìn)制,十六進(jìn)制,BCD碼相互轉(zhuǎn)換C程序教學(xué)文稿.doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、__________________________________________________本人用過的十六進(jìn)制、BCD碼之間的轉(zhuǎn)換C程序,還有十進(jìn)制的,可以參考使用,#include
#include
/////////////////////////////////////////////////////////
//
//功能:十進(jìn)制轉(zhuǎn)十六進(jìn)制
//
//輸入:intdec????????????????????待轉(zhuǎn)換的十進(jìn)制數(shù)據(jù)
//?????intlength?????
2、????????????轉(zhuǎn)換后的十六進(jìn)制數(shù)據(jù)長度
//
//輸出:unsignedchar*hex?????????轉(zhuǎn)換后的十六進(jìn)制數(shù)據(jù)
//
//返回:0???success
//
//思路:原理同十六進(jìn)制轉(zhuǎn)十進(jìn)制____________________________________________________________________________________________________
///////////////////////////////////////////////////////
3、///
intDectoHex(intdec,unsignedchar*hex,intlength)
{
???inti;???for(i=length-1;i>=0;i--)
???{
???????hex[i]=(dec%256)&0xFF;
???????dec/=256;
???}???return0;
}/////////////////////////////////////////////////////
//
//功能:二進(jìn)制取反
//
//輸入:constunsignedchar*src?二進(jìn)制數(shù)據(jù)
//
4、?????intlength???????????????____________________________________________________________________________________________________待轉(zhuǎn)換的二進(jìn)制數(shù)據(jù)長度
//
//輸出:unsignedchar*dst???????取反后的二進(jìn)制數(shù)據(jù)
//
//返回:0???success
//
//////////////////////////////////////////////////////
intc
5、onvert(unsignedchar*dst,constunsignedchar*src,intlength)
{
???????inti;???????for(i=0;i6、______//////////////////////////////////////////////////////////
//
//功能:十六進(jìn)制轉(zhuǎn)為十進(jìn)制
//
//輸入:constunsignedchar*hex????????待轉(zhuǎn)換的十六進(jìn)制數(shù)據(jù)
//?????intlength??????????????????????十六進(jìn)制數(shù)據(jù)長度
//
//輸出:
//
//返回:int?rslt???????????????????????轉(zhuǎn)換后的十進(jìn)制數(shù)據(jù)
//
//思路:十六進(jìn)制每個字符位所表示的十進(jìn)制數(shù)的范圍
7、是0~255,進(jìn)制為256
//?????左移8位(<<8)等價乘以256
//____________________________________________________________________________________________________
/////////////////////////////////////////////////////////
unsignedlongHextoDec(constunsignedchar*hex,intlength)
{
???inti;
8、???unsignedlongrslt=0;???for(i=0;i