c语言中的二进制,八进制,十进制,十六进制都怎么算……,可否举例,谢?

作者&投稿:资拜 (若有异议请与网页底部的电邮联系)
c语言二进制八进制十进制16进制怎么转换~

二进制转换成八进制数
(1)二进制数转换成八进制数:对于整数,从低位到高位将二进制数的每三位分为一组,若不够三位时,在高位左面添0,补足三位,然后将每三位二进制数用一位八进制数替换,小数部分从小数点开始,自左向右每三位一组进行转换即可完成。例如:
将二进制数1101001转换成八进制数,则
(001 101 001)2
| | |
( 1 5 1)8
( 1101001)2=(151)8

(2)八进制数转换成二进制数:只要将每位八进制数用三位二进制数替换,即可完成转换,例如,把八进制数(643.503)8,转换成二进制数,则
(6 4 3 . 5 0 3)8
| | | | | |
(110 100 011 . 101 000 011)2
(643.503)8=(110100011.101000011)2
4、二进制与十六进制之间的转换
(1)二进制数转换成十六进制数:由于2的4次方=16,所以依照二进制与八进制的转换方法,将二进制数的每四位用一个十六进制数码来表示,整数部分以小数点为界点从右往左每四位一组转换,小数部分从小数点开始自左向右每四位一组进行转换。
(2)十六进制转换成二进制数
如将十六进制数转换成二进制数,只要将每一位十六进制数用四位相应的二进制数表示,即可完成转换。
例如:将(163.5B)16转换成二进制数,则
( 1 6 3 . 5 B )16
| | | | |
(0001 0110 0011. 0101 1011 )2
(163.5B)16=(101100011.01011011)2

二进制的1101转化成十进制
 
 1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13
  转化成十进制要从右到左用二进制的每个数去乘以2的相应次方
  不过次方要从0开始
十进制转二进制:
  用2辗转相除至结果为1
  将余数和最后的1从下向上倒序写
就是结果
  例如302
  302/2
=
151
余0
  151/2
=
75
余1
  75/2
=
37
余1
  37/2
=
18
余1
  18/2
=
9
余0
  9/2
=
4
余1
  4/2
=
2
余0
  2/2
=
1
余0
  1/2
=
0
余1
  故二进制为100101110
二进制转八进制
在把二进制数转换为八进制表示形式时,对每三位二进制位进行分组,应该从小数点所在位置分别向左向右划分,若整数部分倍数不是3的倍数,可以在最高位前面补若干个0;对小数部分,当其位数不是的倍数时,在最低位后补若干个0.然后从左到右把每组的八进制码依次写出,即得转换结果.
你算一下就知道了啊
比如110=2^2+2+0=6
二进制转十六进制
要将二进制转为16进制,只需将二进制的位数由右向左每四位一个单位分隔,分的不够的前边补零,用四位数的二进制数来代表一个16进制。转换表如下,括号内为十六进制
0000(0)
0001
(1)
0010
(2)
0011
(3)
0100
(4)
0101
(5)
0110
(6)
0111
(7)
1000
(8)
1001
(9)
1010(A)
1011
(B)
1100
(C)
1101
(D)
1110
(E)
1111
(F)
例如:10101011划分为1010
1011,根据转换表十六进制为AB

先讲一下,二进制与十进制。
以10为例,过程如图。

10进制转化为二进制
10÷2=5....0(余数为0)
5÷2=2....1(余数为1)
2÷2=1....0
1÷2=0....1

然后,非常重要的一步,将余数倒序相加
即:1010

这里特地说明一下,当被除数比除数小时,余数永远为它自己。
如:8÷10 余数为8


二进制转化为十进制

1010
从 右 算起分别对应 :
1 2 4 8
也就是 2的1次方,2次方,3次方




第三步,小数部分怎么计算呢
如10.1

很简单,将0.1乘以2
在乘到整数之前,将结果的整数取出。
如:
0.1x2=0.2.....0
0.2x2=0.4.....0
0.4x2=0.8......0
0.8x2=1.6......1
正序排下来: 0001












至于八进制和十六进制,其实是一样的方法。就是把2换成8。


顺便说一下,如果你是要做开发而不是考试的话可以直接用win系统自带的计算器,选择“程序员” 模式可以直接得到2.8.10.16进制的所有结果。



  1. 二进制逢二进一,八进制逢八进一,十进制逢十进一,十六进制逢十六进一。

  2. 所以二进制的权是2^n,八进制是8^n,十进制是10^n,十六进制是16^n。

  3. 它们的计算根据每一位的数值乘以它们的权的和,如下:

二进制数值(1101):1*2^0+0*2^1+1*2^2+1*2^3

八进制数值(4276):6*8^0+7*8^1+2*8^2+4*8^3

十进制数值(4276):6*10^0+7*10^1+2*10^2+4*10^3

十六进制数值(4276):6*16^0+7*16^1+2*16^2+4*16^3



点击网页链接(网页链接),里面输入二进制,直接转换成其他进制。各种转换都有。




二进制八进制十进制十六进制转换~C语言~
1.二进制转八进制 方法:从低位到高位,每三位为一组,转换为相对应的十进制的数。例如:100111011 100|111|011:分为3组,100对应十进制数是4,111对应十进制数是7,011对应十进制数是3 最后结果为:473 2。八进制转二进制 方法:从高位到低位,每位上的数字转化成对应的三位二进制数字。例如...

计算机什么时候是用二进制、八进制与十六进制?c语言说什么地址就是八...
包括位操作,字节为单位的数据交换的时候用16进制,情况最多,调试、字符编码、压缩、数据转换等等等等等等。都是先按2进制思考,然后按16进制编写“立即数”。很少在立即数上写2进制。8进制很少用,实际中只遇到unix\/linux\/FTP的文件系统权限是常用8进制表示。比如chmod 777 file. 可能在3bit倍数的...

八位二进制高低位是什么?
高八位和低八位:内存里,一个单元是一个字节,也就是8位。如果是16位的指令,就是同时操作连续的2个内存地址,将这连续的2个内存地址当成一个单位,所以就有高8位和低8位之分。由于计算机仅识别二进制描述的数字,所以对一个内存地址,也就是8位二进制,如:0000 0001,0000就是高四位,0001就...

...表示整常数的进制是什么进制?(十进制,二进制,八进制还是十六进制...
C语言中不能用来表示整常数的进制是二进制 二进制是不行的 在C语言中,就是这么规定的,没有什么太深究的原因 整型常量又称整型数,它有三种不同的表示形式:十进制,八进制,十六进制 十进制直接用整数表示 八进制可以在常熟前加0(零)例如027 十六进制在常数前加0x(零 乘号) 例如 0x27 ...

C语言中二进制数怎么表示??
进制数的类型应用:1、进制数是计算机科学中的重要概念,应用涉及到计算机科学、数学、物理等多个领域。本文将从进制数的基本概念、计算方法以及应用三个方面进行解释说明,帮助读者更好地理解进制数的应用。2、进制数的基本概念是指用不同的基数表示数字的方式。常见的进制有二进制、八进制、十进制和十六...

计算机语言中八进制数用数字几开头?
计算机语言中八进制数用数字0开头,例如:010、011、016都是八进制数,八进制数只能用合法的八进制数字表示不能写成018。八进制(基数为8)表示法在计算机系统中很常见,因此,我们有时能看到人们使用八进制表示法。由于十六进制一位可以对应4位二进制数字,用十六进制来表示二进制较为方便。因此,八进制...

八进制数怎么表示?
八进制数是一种以8为基数的计数法,采用0,1,2,3,4,5,6,7八个数字,逢八进1。一些编程语言中常常以数字0开始表明该数字是八进制。八进制的数和二进制数可以按位对应(八进制一位对应二进制三位),因此常应用在计算机语言中。八进制表示法在计算机系统中很常见,因此,我们有时能看到人们...

C语言进制及其转换
八进制 : 2 1 5 其中 二进制的010对应的421中,因4对应0,1对应0,所以没有值,1对应2,所以值为2,所以 以010这3个数为一个单位的数的值为2;二进制中101对应的421中,4对应1,2对应0,1对应1,所以 以101为一个单位的数的值为4+1=5;所以二进制数 010001101 对应的八进制数位 215; 八进制转二进制:...

二进制(带小数)转八进制方法.
从小数点往两边取二进制数,每3个(不足的补0)转换成一个8进制,一定是从中间往两边,例如:110.01=(110).(010)=6.2 整数位向左补0使整数位数为三的倍数 再三位一转。(十进制)小数位向右补0使小数位数为三的倍数 再三位一转。(十进制)1001.00011=(001)(001).(000)(110)=11....

C语言中字符串如何转换为二进制、八进制、十进制、十六进制
只要是整数 int。就只有大小。没有进制的区别。所谓的进制,只是为了人为识别。但是可以把整数,转换为响应进制的字符串。举例 char num[] = "15";int val = atoi(num); \/\/字符串转为整数 char tem[16] = {};_itoa(val,tem,2);\/\/整数转为2进制字符串 _itoa(val,tem,8);\/\/8进制 _...

永泰县18579843353: C语言中的二进制,八进制,十进制,十六进制是什么,还有,数组,
井些奥地: 二进制就是逢二进一,二进制里只有两个数字就是0和1.比如我们平时说的2,记做10,3记做11,4记做100,后面也是同样的道理,我们平时用的是十进制

永泰县18579843353: 二进制、八进制、十进制、十六进制,在C语言中用在哪里 -
井些奥地: 二进制是计算机在实际计算中使用的计数方式,存储和运算都是二进制的 八、十、十六进制是在编程时,不方便使用二进制(位数多,凌乱,不直观),所以用这些进制来写到程序中,计算机在编译时会将它们转换成二进制数据来用.所以这些进制是方便程序设计者写程序的.

永泰县18579843353: c语言中b代表二进制,q代表八进制,d代表十进制,那么什么字符代表十六进制呢? -
井些奥地: H: hexadecimal 十六进制的 其他进制的代表字符: B: binary 二进制的 Q: quaternary 四进制的 D: decimal 十进制的 O: octal 八进制的. 扩展资料: 表示方式C语言、C++、Shell、Python、Java语言及其他相近的语言使用字首“0x”,例如“0x5A3”.开头的“0”令解析器更易辨认数,而“x”则代表十六进制(就如“O”代表八进制).在“0x”中的“x”可以大写或小写. 对于字符量C语言中则以x+两位十六进制数的方式表示,如xFF,同时也以H: hexadecimal 代表十六进制的. 参考资料来源:百度百科-十六进制

永泰县18579843353: c语言十进制二进制八进制之间怎样转换 -
井些奥地: 八进制与二进制的转换 二进制数转换成八进制数:从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数. 八进制数转换成二进制数:把每一个八进制数转换成3位的二进制数,就得到一个二进制数. 八进制数字与二进制数字对应关系如下: 000 -> 0 100 -> 4 001 -> 1 101 -> 5 010 -> 2 110 -> 6 011 -> 3 111 -> 7

永泰县18579843353: C语言中的八进制 -
井些奥地: 除了二进制,C语言还会使用到八进制. 八进制是一种“逢八进一”的进制,它由 0~7 八个符号来描述.同样,此处通过十进制和八进制的对比来描述八进制的表示方式. 八进制基数为8,加法运算时逢八进一,减法运算时借一当八.例如,数...

永泰县18579843353: c语言中二进制 十进制 八进制 十六进制之间的换算? -
井些奥地: 二进制的1101转化成十进制1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13 转化成十进制要从右到左用二进制的每个数去乘以2的相应次方 不过次方要从0开始 十进制转二进制: 用2辗转相除至结果为1 将余数和最后的1从下向上倒序写...

永泰县18579843353: 计算机C语言的各种进制的转换?2进制,8进制,10进制,16进制他们之间怎么换啊?
井些奥地: #include <stdio.h>void main(){ int a=100; printf("%o\n",a); printf("%x",a);}计算机默认的是10进制的数.要想输出八进制和十六进制的只用像上面那样.printf("%d",a)输出的是a的十进制.没有那个命令可以直接输出2进制的.要用程序转.但实际上计算机中存储数据的时候都是用2进制存的,

永泰县18579843353: C语言进制转换 -
井些奥地: 很简单的, 以下是各种进制的转换方法: 两个进制(其中之一为10进制)之间的互转(手工计算方法) 以2,10进制互转为例,其他请举一反三: 二进制数1101转十进制: 1*2的三次幂+1*2的二次幂+0*2的一次幂+1*2的零次幂=8+4+0+1=13 ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网