进位制与整数表示

一、用ASCII码表示字符

特殊的字符进行转义才能表达:

\n  换行  \\   反斜杠   \"   引号     \0 空字符

八进制:  \o,  \oo, \ooo (o为一个八进制数字)

十六进制:  \xh  (h为十六进制数字串)

 

printf("%d %o %x\n", a, a, a)是把整数a分别按照十进制、八进制和十六进制输出  (小写x转换成十六进制,字母表示是小写

                                                                                                                                    大写X转换成十六进制,字母表示是大写)

 

二、进制转换与移位运算符

乘以2:可以写成 << 1,意思是左移一位, 左移四位就是乘以2的四次方

例如2的8次方减一, (1 << 8) -1   (必须要加括号,因为 < <运算符的优先级没有减法高)

 

三、补码表示

表示正数和负数:例如使用带符号32位整数表示法:用最高位表示符号(0:正数 1:负数)剩下31位表示数的绝对值

#include int main(){int a= -1;printf("%u\n", a);return 0;
}

-n的内部表示是2的32次方-n,这便是“补码表示法”

多数计算机内部,整数采用的是“补码表示法”

int类型的范围   [-2^31 , 2^31 -1] 即 [-2147483648,2147483647]


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部