十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。同我们日常生活中的表示法不一样。它由0-9,A-F组成,字母不区分大小写。与10进制的对应关系是:0-9对应0-9;A-F对应10-15;N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F。
C,C++没有提供在代码直接写二进制数的方法。用16进制或8进制可以解决这个问题。因为,进制越大,数的表达长度也就越短。不过,为什么偏偏是16或8进制,而不其它的,诸如9或20进制呢?2、8、16,分别是2的1次方、3次方、4次方。这一点使得三种进制之间可以非常直接地互相转换。8进制或16进制缩短了二进制数,但保持了二进制数的表达特点。
十六进制中有0x就代表是十六进制,没有0x就代表是十进制这句话是对的。
整型常量
1,八进制整常数八进制整常数必须以0开头,即以0作为八进制数的前缀。数码取值为0~7。八进制数通常是无符号数。
以下各数是合法的八进制数:
015(十进制为13) 0101(十进制为65) 0177777(十进制为65535)
以下各数不是合法的八进制数:
256(无前缀0) 03A2(包含了非八进制数码) -0127(出现了负号)
2,十六进制整常数
十六进制整常数的前缀为0X或0x。其数码取值为0~9,A~F或a~f。
以下各数是合法的十六进制整常数:
0X2A(十进制为42) 0XA0 (十进制为160) 0XFFFF (十进制为65535)
以下各数不是合法的十六进制整常数:
5A (无前缀0X) 0X3H (含有非十六进制数码)
3,十进制整常数
十进制整常数没有前缀。其数码为0~9。
以下各数是合法的十进制整常数:
237 -568 65535 1627
以下各数不是合法的十进制整常数:
023 (不能有前导0) 23D (含有非十进制数码)
扩展资料:
计算机中常用的进制:
二进制,八进制,十六进制。
进制,数字,进位方法:
十进制 0、1、2、3、4、5、6、7、8、9 逢十进一
二进制 0、1 逢二进一
八进制 0、1、2、3、4、5、6、7 逢八进一
十六进制 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 逢十六进一
编程中,我们常用的还是10进制。
比如:
int a = 100,b = 99;
不过,由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决问题。
但,二进制数太长了。比如int类型占用4个字节,32位。比如100,用int类型的二进制数表达将是:
0000 0000 0000 0000 0000 0000 0110 0100
68(十进制) = 1000100(二进制)二进制从右到左将四位划分为一个十六进制,不足则补0;
1000100(二进制)=0100 0100(二进制)=44(十六进制)
0x开始的数据表示16进制。
十六进制(hexadecimal)是计算机中数据的一种表示方法。它的规则是“逢十六进一”。
可使用数字符号的数目称为基数(en:radix)或底数,基数为n,即可称n进位制,简称n进制。最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数。
十六进制数具有下列两个特点:
英文字母A,B,C,D,E,F分别表示数字10~15。
计数到F后,再增加1个,就进位。十六进制数是计算机常用的一种计数方法,它可以弥补二进制数书写位数过长的不足,也用于电视机中。
01000001B中的B代表二进制数据,01000001的二进制数据转10进制为65,即'A'字符的ASCII码。
ASC码中字母是连续编码的,即 'B' = 'A' + 1,'C' = 'A' + 2,'D' = 'A' + 3,因为'A'的ASC码是 01000001B,‘B’的ASC码是 01000010B,你在这上面直接加上3的二进制 11B,就得到‘C’的ASC码01000100B。
如果你不会二进制加法,那就把上面的二进制转成10进制,算完后再换回2进制。
01000001B的10进制为65,即'A'字符的ASCII码,那么C的ASCII码为67,转化为二进制为01000100B。
扩展资料:
常见ASCII码的大小规则:0~9<A~Z<a~z。
1)数字比字母要小。如 “7”<“F”;
2)数字0比数字9要小,并按0到9顺序递增。如 “3”<“8” ;
3)字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z” ;
4)同个字母的大写字母比小写字母要小32。如“A”<“a” 。
几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48 [4] 。
参考资料来源:百度百科--ASCII
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)