进制转换(了解)

本章内容了解就行 进制转换

  • 进制的表示
// 编程中默认的就是十进制 int num = 12; // 如何输出十进制 %i %d,以十进制的方式输出数据 printf("十进制:%i\n", num); // 在编程中想表示二进制,需要在数字前面加上0b int num1 = 0b1100; printf("十进制:%i\n", num1); // 在编程中想表示八进制,需要在数字前面加上0 int num2 = 014; printf("十进制:%i\n", num2); // 在编程中想要表示十六进制,需要在数字前面加上0x int num3 = 0xc; printf("十进制:%i\n", num3); // 通过八进制输出12,%o 就是以八进制的方式输出 printf("八进制:%o\n", num); // 通过十六进制的形式输出12 %x 就是以十六进制输出的占位符 printf("十六进制:%x\n", num); // 注意:在C语言中没有以二进制输出的占位符

  • 十进制转二进制
    • 用需要转换的十进制数除以2,记录结果和余数
    • 用结果除以2,记录结果和余数
    • 重复第二步,知道结果是0
    • 转换成的二进制就是余数从后往前拼接在一起
    • 比如:余数是1 1 0 0 1 那么二进制就是10011
  • 二进制转十进制
    • 从二进制数的低位数开始,用低位数乘以2的多少次幂
    • 幂数从0开始
    • 然后将结果相加
  • N位二进制数的取值范围0-2(n)-1
    • 1位:0-1 0~2(1)-1
    • 2位:0-3 0~2(2)-1
    • 3位:0-7 0~2(3)-1
  • 二进制转八进制
    • 三个二进制位代表一个八进制位,只需要将3个二进制位转换为十进制,之后再将所有的结果连接起来
  • 【进制转换(了解)】二进制转换为十六进制
    • 四个二进制位代表一个十六进制位,只需要将4个二进制位转换为十进制,之后再将所有的结果连接起来

    推荐阅读