十进制数怎么转换成16进制的数?
2011-04-01
展开全部
以2
287/2=143......1(余数)
143/2=71........1
71/2=35..........1
35/2=17..........1
17/2=8...........1
8/2=4.............0
4/2=2.............0
2/2=1.............0
1/2=0.............1
倒过来写的余数就是100011111
.47
.47x2=0.94.....0(0是0.94的整数部分)
.94x2=1.88.....1
.88x2=1.76.....1
.76x2=1.52.....1
.52x2=1.04.....1
.04x2=0.08.....0
.08x2=0.16.....0
.16x2=0.32.....0
.32x2=0.64.....0
.64x2=1.28.....1
.28x2=0.56.....0
.56x2=1.12.....1
:
:
:
小数点顺着写就是 .011110000101
这个看就是无止境的,要看你需要的位数和你的储存空间,题目止到0
所以你的2进制是对的100011111.011110
==========================
287.47 的八进制 整数部分除以8,小数点乘以8
287/8=35......7
35/8=4..........3
4/8=0............4
余数倒过来写就是437
.47
.47x8=3.76....3(整数部分是3)
.76x8=6.08....6
.08x8=0.64....0
.64x8=5.12....5
.12x8=0.96....0
:
:
:
这个也是无止境的,小数点就是 .36050
八进制就是437.36050
==============================
287.47 的16进制 整数部分除以16,小数乘以16
287/16=17.....F(15)(余数)
17/16=1........1
1/16=0..........1
余数倒过来就是11F
.47
.47x16=7.52....7(整数部分是7)
.52x16=8.32....8
.32x16=5.12....5
.12x16=1.92....1
:
:
:
这也是无止境,小数就是 .7851
16进制就是11F.7851
=======================
如果你不会直接从二进制转化成8或者16进制,可以先把它们转成10进制的,或者画表格
Decimal ,Hexadecimal, Octal, Binary
0, 0, 0, 0000
1, 1, 1, 0001
2, 2, 2, 0010
3, 3, 3, 0011
4 ,4, 4, 0100
5, 5, 5, 0101
6, 6,6, 0110
7, 7, 7, 0111
8, 8, 10, 1000
9, 9, 11, 1001
10, a, 12, 1010
11, b, 13, 1011
12, c, 14, 1100
13, d, 15, 1101
14, e, 16 ,1110
15, f, 17, 1111
呵呵~我不知道你看不看得懂
另外,虚机团上产品团购,超级便宜
287/2=143......1(余数)
143/2=71........1
71/2=35..........1
35/2=17..........1
17/2=8...........1
8/2=4.............0
4/2=2.............0
2/2=1.............0
1/2=0.............1
倒过来写的余数就是100011111
.47
.47x2=0.94.....0(0是0.94的整数部分)
.94x2=1.88.....1
.88x2=1.76.....1
.76x2=1.52.....1
.52x2=1.04.....1
.04x2=0.08.....0
.08x2=0.16.....0
.16x2=0.32.....0
.32x2=0.64.....0
.64x2=1.28.....1
.28x2=0.56.....0
.56x2=1.12.....1
:
:
:
小数点顺着写就是 .011110000101
这个看就是无止境的,要看你需要的位数和你的储存空间,题目止到0
所以你的2进制是对的100011111.011110
==========================
287.47 的八进制 整数部分除以8,小数点乘以8
287/8=35......7
35/8=4..........3
4/8=0............4
余数倒过来写就是437
.47
.47x8=3.76....3(整数部分是3)
.76x8=6.08....6
.08x8=0.64....0
.64x8=5.12....5
.12x8=0.96....0
:
:
:
这个也是无止境的,小数点就是 .36050
八进制就是437.36050
==============================
287.47 的16进制 整数部分除以16,小数乘以16
287/16=17.....F(15)(余数)
17/16=1........1
1/16=0..........1
余数倒过来就是11F
.47
.47x16=7.52....7(整数部分是7)
.52x16=8.32....8
.32x16=5.12....5
.12x16=1.92....1
:
:
:
这也是无止境,小数就是 .7851
16进制就是11F.7851
=======================
如果你不会直接从二进制转化成8或者16进制,可以先把它们转成10进制的,或者画表格
Decimal ,Hexadecimal, Octal, Binary
0, 0, 0, 0000
1, 1, 1, 0001
2, 2, 2, 0010
3, 3, 3, 0011
4 ,4, 4, 0100
5, 5, 5, 0101
6, 6,6, 0110
7, 7, 7, 0111
8, 8, 10, 1000
9, 9, 11, 1001
10, a, 12, 1010
11, b, 13, 1011
12, c, 14, 1100
13, d, 15, 1101
14, e, 16 ,1110
15, f, 17, 1111
呵呵~我不知道你看不看得懂
另外,虚机团上产品团购,超级便宜
展开全部
十进制直接除十六,求余,直到商为零,从最后一个余数开始写,直到第一个余数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
void aaa(int a,int b)
{
if(a==0)return;
aaa(a/b,b);
if(a%b>9) printf("%c",'A'+a%b-10);
else printf("%c",'0'+a%b);
}
main()
{
aaa(18,16);
}
void aaa(int a,int b)
{
if(a==0)return;
aaa(a/b,b);
if(a%b>9) printf("%c",'A'+a%b-10);
else printf("%c",'0'+a%b);
}
main()
{
aaa(18,16);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询