iOS开发-C语言-进制的转换

本文详细介绍了计算机中的进制概念,包括二进制、八进制、十六进制的特点和书写格式,并探讨了它们在实际应用中的场景。此外,文章还讲解了进制转换的方法,如二进制、八进制、十六进制之间的相互转换。进一步,文章阐述了机器数和真值的概念,以及原码、反码、补码在计算机存储中的作用。通过具体的例子,解释了补码表示法如何简化计算机的运算过程,特别是减法运算。最后,文章提到了位运算符的使用,如按位与、按位或、按位异或、位移等,并探讨了位运算在数值转换和变量操作中的应用。
摘要由CSDN通过智能技术生成

一、进制
1.什么是进制
• 是一种计数的方式,数值的表示形式
2.二进制
• 特点:只有0和1,逢2进1
• 书写格式:0b或者0b开头
o 二进制 以0b 或者 0B开头
o 八进制 以0开头
o 十六进制 以0x或者0X开头
• 使用场合:二进制指令\二进制文件,变量在内存中就是二进制存储
• n为二进制位所能表示的数据范围(不考虑负数):0~2的n次方-1
3.八进制
• 特点:0~7,逢八进一
• 书写格式:0开头
4.十六进制
• 特点:0~F,逢十六进一
• 书写格式:0x或者0X开头
5.总结
1>mac中计算器的使用
2>printf以不同形式进行输出

进制的应用

#include <stdio.h>

int main(int argc, const char * argv[]) 

{

    int a = 13;
    printf("%d\n",a);
    printf("%o\n",a);
    printf("%x\n",a);

    int b = 0b00000000000000000000000000001101;
    printf("%d\n",b);
    int b1 = 015;
    printf("%d\n",b1);

    int b3 = 0x520A;
    printf("%d\n",b3);

    return 0;
}

二、常见的进制转换
转换:有得时候转换为人能识别的数制,要操作计算机写计算机能够识别的语言(二进制)
10 -> 2 : 除2取余法,把10进制数除以2,然后取得余数的序列,再倒序
2 -> 10 : 所有位的位权相加 101 = 1*2^0+0*2^1+1*2^2
2 –> 16 : 4合1法, 整数部分从右向左 4位结合成一位,小数部分从左向右4位结合1位, 不足部分补0
16 –>2 : 1拆4法, 16进制的1位拆成二进制的4位
2–>8:3合1
8–>2:1拆3
10–>8 :除8取余
8 –> 10 : 8–> 2 –> 10
16 –> 10: 16 –>2 –>10

进制转换应用


#include <stdio.h>


void changeTo2(int n){


    int len = sizeof(n) * 8;

    int temp;

    for (int i=0; i<len; i++) {
        temp = n;  
        temp = temp>>31-i;   
            int t = temp & 1;
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值