C语言中进制数的转化问题。
快要考试了C语言,老师说要考进制数转化方面的内容,可我实在是不懂(要怎么考?怎么算也不知道),求大神给我讲讲二进制十进制十六进制之间的转化是怎么计算的。。。。谢谢了~~...
快要考试了C语言 ,老师说要考进制数转化方面的内容,可我实在是不懂(要怎么考?怎么算也不知道) ,求大神给我讲讲二进制十进制十六进制之间的转化是怎么计算的 。。。。 谢谢了~~
展开
展开全部
十进制是大家最熟悉的,生活中用的最多的,逢十进一。
而像二进制,八进制,十六进制大致和它相似。
二进制便是逢二进一,八进制是逢八进一,十六进制便是十六进一。
表示方法:
2进制,用两个阿拉伯数字:0、1;
8进制,用八个阿拉伯数字:0、1、2、3、4、5、6、7;
10进制,用十个阿拉伯数字:0到9;
16进制,用十个阿拉伯数字:0到9,再加A到F;
我个人觉得对初学者来说把别的进制转换为十进制,再用求馀数的方法最简单。。。
十进制整理转换成二进制 将十进制整数转换成二进制整数采用“除2取倒余法”。 即将十进制整数除以2,得到一个商和一个余数;再将商除以2,又得到一个商和一个余数; 以此类推,直到商等于零为止。 每次得到的余数的倒排列,就是对应二进制数的各位数。其实都可以这样算。。。
自己理解,望采纳!不懂再问,我觉得你应该问点具体的。。。
而像二进制,八进制,十六进制大致和它相似。
二进制便是逢二进一,八进制是逢八进一,十六进制便是十六进一。
表示方法:
2进制,用两个阿拉伯数字:0、1;
8进制,用八个阿拉伯数字:0、1、2、3、4、5、6、7;
10进制,用十个阿拉伯数字:0到9;
16进制,用十个阿拉伯数字:0到9,再加A到F;
我个人觉得对初学者来说把别的进制转换为十进制,再用求馀数的方法最简单。。。
十进制整理转换成二进制 将十进制整数转换成二进制整数采用“除2取倒余法”。 即将十进制整数除以2,得到一个商和一个余数;再将商除以2,又得到一个商和一个余数; 以此类推,直到商等于零为止。 每次得到的余数的倒排列,就是对应二进制数的各位数。其实都可以这样算。。。
自己理解,望采纳!不懂再问,我觉得你应该问点具体的。。。
追问
二进制的懂了,那十六的怎么计算?
追答
十六进制也一样!无论你是多少进制的数,你先换成十进制的。再用求余数的方法。转换为十六进制的肯定是除以十六求馀数。。。例如:(58)除16 得3 余10 ;(3)除15得 0 余3:所以
(58)十进制=3A十六进制。
展开全部
以十进制数25为例子
1:变为2进制用十短除2
25除2 商12余1,
12除2 商6余0,
6除2 商3余0,
3除2 商1余1,
1除2 商0余1,
从下往上看余数 便是2进株书即 十进制25=11001,
根据所得2进制数取3位一组 即11,001不够3位最左边补0便是8进制数 即11,001=31 即便是8进制的31,
还是根据所得2进制数分4为一组即1,1001 不够4位最左边补0即 0001,1001便是16进株数19 也就是十进制数25D=11001B,25=31O,25=19X
当然反过来你应该会了把
1:变为2进制用十短除2
25除2 商12余1,
12除2 商6余0,
6除2 商3余0,
3除2 商1余1,
1除2 商0余1,
从下往上看余数 便是2进株书即 十进制25=11001,
根据所得2进制数取3位一组 即11,001不够3位最左边补0便是8进制数 即11,001=31 即便是8进制的31,
还是根据所得2进制数分4为一组即1,1001 不够4位最左边补0即 0001,1001便是16进株数19 也就是十进制数25D=11001B,25=31O,25=19X
当然反过来你应该会了把
追问
前面的看懂了,后面取3位一组取4位一组的看不懂。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
十进制,化为其他进制,比如 13华为二进制,13除以2,6余1;6除以2,3余0;3除以2;1余1;所以就是把余数倒着写;1101(最后是1余1,所以都要写)。其他一样,二进制化十六进制,可以先化成十进制,或者比如:101010,从右向左四位看,因为2的四次方是16,所以,后四位1010是10,所以是A,10是2;所以是2A。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询