整理计算机导论复习(1)


一、常见进制的表示

在这里插入图片描述

进制数码
十进制100,1,2,3,4,5,6,7,8,9
二进制20,1
八进制80,1,2,3,4,5,6,7
十六进制160,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
其中A代表数字10,B代表数字11,以此类推

二、进制转换

1.十进制转其他进制:短除法 and 连乘法

要将十进制数转为x进制(x为偶数),整数部分反复除以x并记录余数,直到商为0为止,倒序写出余数;小数部分反复乘x并记录所得结果的整数部分,直到小数部分为0为止,正序写出整数部分

例如十进制转为二进制:
在这里插入图片描述
顺便插入一段用C语言实现把十进制数转为二进制的代码:

#include <stdio.h>
void dectobin( int n )
{
    int i,j,m,a[100],p;
    for(i=0;;i++)
    {
       m=n%2;/*将这里的2以及下一行的2改为8,代码的功能就变成把十进制数转化为八进制数*/
       p=n/2;
       a[i]=m;
       n=p;
        if(p==0)break;
    }
    for(j=i;j>=0;j--)
    {
        printf("%d",a[j]);/*注意数组a[i]中存储的余数是正序的,要倒序输出*/
    }
}
int main()
{
    int n;
    scanf("%d", &n);
    dectobin(n);
    return 0;
}
/**/

下图是在DEVC++上运行的结果:
在这里插入图片描述

2.其他进制转十进制:位权相加法

把各非十进制数按权展开求和

1)二进制转十进制

二进制数1011.11
位置量2^32^22^12^0.2^(-1)2^(-2)
各部分结果8+0+2+1.+0.5+0.25

十进制结果:11.75

2)八进制转十进制

八进制数23.17
位置量8^18^0.8^(-1)8^(-2)
各部分结果16+3.+0.125+0.109

十进制结果:19.234
3)十六进制转十进制

十六进制数1A.23
位置量16^116^0.16^(-1)16^(-2)
各部分结果16+10.+0.125+0.012

十进制结果:26.137

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值