十进制的正整数,负数, 小数转为二进制.八进制.十六进制的方法 包括原码,反码,补码的介绍


一.正整数 :

例如42对于初学者,迟早要面对进制的转换,或许你认为很简单 ------就拿十进制42化为二进制来讲:不就是用42除以2不断取余,直到被除数为零,然后把得到的余数倒过来排列在一起,就是要转化为的值。如图1和图2所示,最后的值为101010

十进制化为八进制,十六进制:一:当然可以模仿十进制化为二进制的方法,把除2取余法换成除8取余法和除16取余法。

                                                  二:除此之外,十进制化为八进制,十六进制也可以以二进制数为桥梁,把十进制先化为二进制,再把二进制转化为八进制和十六进制;因为此种方法有捷径:二进制化为八进制:比如101010三位拆开为101   010;再分别三位化成十进制拼接就好,即101010前三位101化为6,后三位010化为2,也就是说二进制的101010化为八进制数的结果为62.二进制化为十六进制就是四位拆开,方法和八进制是一样的。有可能你会问:10101是五位的,怎么三位三位分开?答案:你可以高位填零啊:10101=010101=010 101  这样就会了吧。

二.负整数

第一种形式:(符号-数值)形式中,在机器中数的正负“+-”符号不易表示,为方便起见,定义最高位(最左边的)数位为符号位,1代表正数,0代表负数。不如说,01010110就是42.11010110就是-42,

第二种形式:仅仅按照第一种方式以首位区分正负,到了四则运算的过程中,乘除不会出错,但加法就出现了问题:比如42+42即01010110+11010110不等于0!这是在是很不和现实的一点。于是乎,在目前的机器中,在计算中并没有采取第一种形式,而是采取了原码,反码,补码,的三种形式,下面我们来看看怎么表示负整数,以及负整数怎么化为二进制。


 以-42为例,要把其转化为二进制数,如下图4所示

     

ok,到这里你或许会问为什么会这样?

你还得了解 1.原码2.反码3补码的定义。

1.二进制数的原码:见上图的00101010就是原码;

2.二进制数的反码:对原码各位取反0->1,1->0,比如原码的00101010->11010101,而11010101就是反码;

3.二进制的补码:补码=反码+1  即  11010110(补码)=11010101(反码)+1;


十进制小数转为二进制数:

 乘二取整法:如图5所示以0.125为例,直到积的小数部分为0或者达到题目要求的结果位数,计算结束。

图6以6.125为例,整数大于1,要把整数和小数部分分开算然后直接相加就可以了。



本文参考图片:http://jingyan.baidu.com/article/597a0643614568312b5243c0.html

版权:CSDN博客:娄钱的专栏



  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值