负数的二进制和十进制之间的转换 您所在的位置:网站首页 11011111二进制转换8进制 负数的二进制和十进制之间的转换

负数的二进制和十进制之间的转换

2024-07-15 15:21| 来源: 网络整理| 查看: 265

负数的二进制和十进制之间的转换: 1. 十进制负数转换为二进制的方法为: 1、将十进制转换为二进制数。 2、对该二进制数求反。 3、再将该二进制数加1. 总之就是将十进制数转换为二进制数求补码即为结果。比如: -32 第一步:32(10)=00100000(2) 第二步:求反:11011111 第三步:加1:11100000 所以-32(10)=11100000(2)

2. 计算机中的整数是用补码存储的,最高位为符号位,C语言也遵从同样的规则。 如果最高位为0则为正数,求值的时候,直接转为10进制即可。 最高位如果为1代表为负数,求值的时候,需要先把二进制的值按位取反,然后加1得到负数绝对值(相反数)的二进制码,然后转为10进制,加上负号即可。

以char型为例,char占一个字节,即8位。 对于二进制值B10110011转换十进制过程为: 先取反,即1变0,0变1,得到: B0100 1100 再加1: B0100 1101 转为十进制,即按照每位的权值乘上对应位的值,结果相加即可。 十进制值=0*2^7 + 1*2^6 + 0*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 =0+64+0+0+8+4+0+1 =77 加上符号,最终的十进制值就是-77。 即B10110011 表示的十进制值为-77。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有