欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9179|回復: 9
打印 上一主題 下一主題
收起左側

51單片機char類型16進制轉換10進制,有思路嗎?

[復制鏈接]
跳轉到指定樓層
樓主
30黑幣
16進制數據存在CHAR數組里面     列如:  char a[0]=0xfa;   我想過把F和A提取出來,然后SUM=15*16^1+10*16^0=250  剛好等于 0XFA 。
但是不知道怎么提取。   對10進制的取余操作不知道對16進制管不管用,求各位大神給點思路。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:220005 發表于 2019-7-20 12:10 | 只看該作者
提供一點思路



上面給了兩種方法,但是是將“數值”轉換為“字符”。
第一種方法中,把HextoAsc函數中if語句修改一下就好。
第二種方法中,把TabAsc數組中的‘字符’改成‘數值’就好。
多讀兩遍很容易看懂的!
回復

使用道具 舉報

板凳
ID:578917 發表于 2019-7-20 12:12 | 只看該作者
問題已經自己解決。   列如:
char a=0xFA;
char i,j;
i=a%0x10;//結果i=0xA
j=a/0x10;//結果j=0xF
回復

使用道具 舉報

地板
ID:375161 發表于 2019-7-20 12:25 | 只看該作者
這樣試試怎么樣?  b=a&0xf0;   c=a&0x0f;  把原數據認為是二進制數,按位與,分別取前四位和后四位。
回復

使用道具 舉報

5#
ID:277550 發表于 2019-7-20 12:28 | 只看該作者

char a=0xfa;
char a1 = a>>4;
char a2 = a&0xf;

其實使用unsigned char 更合適。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
回復

使用道具 舉報

6#
ID:405975 發表于 2019-7-20 12:59 | 只看該作者
問題是10進制在單片機里存儲本來就是16進制的,0XFA轉化后還是0XFA,有什么意義呢?假如說硬要轉換將0X除10,然后得到的商乘10加余數即可。
回復

使用道具 舉報

7#
ID:10193 發表于 2019-7-20 13:17 | 只看該作者
0xfa%16和0xfa/16
回復

使用道具 舉報

8#
ID:10193 發表于 2019-7-20 13:22 | 只看該作者
0xfa%0x10和0xfa/0x10
回復

使用道具 舉報

9#
ID:220355 發表于 2019-7-20 14:49 | 只看該作者
除以10,再對10求余
回復

使用道具 舉報

10#
ID:384252 發表于 2019-7-22 11:27 | 只看該作者
樓主給出的數據類型為char,即為有符號類型,char a[0]=0xfa,轉換成10進制數應該=-6才對吧?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表