打印
[MCU]

把十六进制数转换成十进制数

[复制链接]
1279|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shimx|  楼主 | 2020-2-23 11:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想在单片机里把十六进制数转换成十进制数,但不知道怎么用c进行编写

使用特权

评论回复

相关帖子

沙发
jiaxw| | 2020-2-23 11:18 | 只看该作者
你举个例子

使用特权

评论回复
板凳
shimx|  楼主 | 2020-2-23 11:19 | 只看该作者

TH1=0xab,TL1=0xcd,把这四位的十六进制数转换成十进制数。

使用特权

评论回复
地板
spark周| | 2020-2-23 11:21 | 只看该作者
/,%

使用特权

评论回复
5
shimx|  楼主 | 2020-2-23 11:22 | 只看该作者
额,您可以说的具体点吗

使用特权

评论回复
6
spark周| | 2020-2-23 12:13 | 只看该作者
0xff=255;
255/100=2//百位
255%100=55;
55/10=5...//十位
...

使用特权

评论回复
7
liliang9554| | 2020-2-23 12:14 | 只看该作者
LZ懂加权吗?
一个十六进制数,XnXn-1X......X0
转换成十进制: Xn*16^(n)+Xn-1*16^(n-1)+......+X0*16^0

使用特权

评论回复
8
liliang9554| | 2020-2-23 12:16 | 只看该作者

例如: 0xab=10*16^1+11*16*0=10*16+11=171

使用特权

评论回复
9
午夜粪车| | 2020-2-23 12:18 | 只看该作者
请问我在写串口程序的时候。接收数据时输入端输入的是16进制,但是把它当做十进制数看的,然后如何把它的各个位给分离开,才能在数码管上显示已经输入的数?

使用特权

评论回复
10
jiaxw| | 2020-2-23 12:20 | 只看该作者
主要是明白除"/"和取模"%"的意思和用法就可以操作了......这个还是挺有用的......

使用特权

评论回复
11
午夜粪车| | 2020-2-23 12:22 | 只看该作者
赞成7楼,其实就是加权 Xn*16^(n)+Xn-1*16^(n-1)+......+X0*16^0

使用特权

评论回复
12
shimx|  楼主 | 2020-2-23 12:24 | 只看该作者
嗯,懂了,多谢啦

使用特权

评论回复
13
xxrs| | 2020-2-23 12:34 | 只看该作者
除以十六就可以了

使用特权

评论回复
14
jlyuan| | 2020-2-23 12:35 | 只看该作者
楼主要实现什么?

使用特权

评论回复
15
pangb| | 2020-2-23 12:38 | 只看该作者

就是加起来%10就可以。

使用特权

评论回复
16
heweibig| | 2020-2-23 12:40 | 只看该作者
楼主要显示什么吗?

使用特权

评论回复
17
chenho| | 2020-2-23 12:42 | 只看该作者
十六进制有ABCDEF

使用特权

评论回复
18
stly| | 2020-2-23 12:43 | 只看该作者
一个数的每一位都有一个权值

使用特权

评论回复
19
xxrs| | 2020-2-23 12:45 | 只看该作者
面就要补0占位 转换为16进制是F

使用特权

评论回复
20
pangb| | 2020-2-23 12:48 | 只看该作者

16进制数的第0位的权值为16的0次方

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

857

主题

10661

帖子

5

粉丝