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

2019-4-17 Stone PHP

负数十进制转换成二进制方法:



<?php
//负数十进制转换成二进制  以-61为例

//先算出61的二进制(原码):
0011 1101


//再取反(反码): 
1100 0010


//然后再加1得到补码: 
1100 0011


//即-61的二进制位 1100 0011 



负数二进制转换成十进制的方法:



<?php
//以负数的二进制求负数的十进制 以 1100 0011 为例

//原码 : 
1100 0011 


//再减去1:
 1100 0010 


//然后取反码:
 0011 1101


//最后转换成十进制: 
0*2^7+0*2^6+1*2^5+1*2^4+1*2^3+1*2^2+0*2^2+1*2^0 = 61 


即 -61


标签: 负数二进制转换十进制

评论(0) 浏览(970)

Copyright © 2019 by 海角孤星 京ICP备15056837号-1