有些语言用0b111来表示二进制数111。但至少C没有二进制常数表示方法,高版本的编译器支持0b表示二进制数
例子:
int num1 = 210; //十进制
int num2 = 01010; //八进制
int num3 = 0x1010; //十六进制
进制转换:
1.其他进制转十进制(小数也一样的操作,小数取-1次开始):
1)二进制转十进制
例:1011(2)=1×23+0×22+1×21+1×20=8+0+2+1=9(10)
从最低为开始,每个0或1乘以2的n次方,n为这个位的位数(从右往左,第0位开始)
如例所示:第零位的数字是1,则有1×20,第三位的数字是1,则有1×23。如此类推。
2)八进制转十进制(类似于二进制转十进制)
例:0123(8)=0×83+1×82+2×81+3×80=0+64+16+3=83(10)
从最低为开始,每位数乘以8的n次方,n为这个位的位数(从右往左,第0位开始)
如例所示:第零位的数字是0,则有3×80,第三位的数字是0,则有0×83。如此类推。
3)十六进制转十进制(类似于二进制转十进制)
牢记:A=10;;B=11;;C=12;;D=13;;E=14;;F=15;;
例:0x34A(2)=3×162+4×161+10(A)×160=768+64+10=842(10)
从最低为开始,每位数乘以16的n次方,n为这个位的位数(从右往左,第0位开始,注意前面两位是表示此时为十六进制还是属于十六进制的数)
如例所示:第零位的数字是A,则有10×160,第二位的数字是3,则有3×162。如此类推。
把下列进制转换为十进制(答案是白色字体):
0b110001100=396
02456=1326
0xA45=2629
其余进制自行学习!!!!!!!!!!!!
2.十进制转其他进制:
3.二进制转其他进制:
4.其他进制转二进制:
标签:10,进制,十六进制,二进制,零位,十进制,运算 From: https://www.cnblogs.com/MorningMaple/p/16721122.html