欢迎使用CSDN-markdown编辑器

来源:互联网 发布:js 字符串分割split 编辑:程序博客网 时间:2024/05/16 19:30

进制

  • C语言中系统默认数值为十进制
    默认就是10进制 eg. int num = 12;
    在前面加上一个0就代表八进制 eg.int num1 = 014;
    %d是以十进制的方式输出一个整数 printf(“%d\n”, num1);
    %o是以八进制的方式输出一个整数 printf(“%o\n”, num);
    在数值前面加上0b就代表二进制 int num2 = 0b1100;
    在数值前面加上0x就代表十六进制 int num3 = 0xc;
    %x是以十六进制的方式输出一个整数 printf(“%x\n”, num);
  • 数值”不看你存,只看你取”:
    eg. int num1 = 077;//以八进制形式存入变量中
    printf(“%x\n”,num1); //以十六进制形式输出num1中的数据

进制转换

  • 二进制转换为八进制:规律:三个二进制位代表一个八进制位;
  • 二进制转换为十六进制:规律:四个二进制位代表一个十六进制位

原码反码补码

  • 二进制的最高位我们称之为符号位:
    如果符号位是0代表是一个正数,
    如果符号位是1代表是一个负数.
  • 正数的反码补码就是他的原码;
  • 负数的反码是他的符号位不变,其他位取反得到的;
  • 负数的补码是他的反码加1得到的;
  • 注意:无论正数负数在内存中存储的都是补码.
    10000000 00000000 00000000 00001100 (-12的原码)
    11111111 11111111 11111111 11110011(反码, 符号位不变其它位取反)
    11111111 11111111 11111111 11110100(补码,反码+1)
0 0
原创粉丝点击