二进制--补码简介

 

最近因工作需要,了解下Java二进制存储情况,发现Java中二进制都是以补码形式存储。下面简单介绍下二进制的补码转换:
<div>
<div>在计算机系统中,数值一律用补码来表示(存储)。
  主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。 
       (1)正数的补码:与原码相同。
  【例1】+9的补码是00001001。
  (2)负数的补码:符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。
  【例2】求-7的补码。
  因为给定数是负数,则符号位为“1”。
  后七位:+7的原码(0000111)→按位取反(1111000)→加1(1111001)
  所以-7的补码是11111001。
  已知一个数的补码,求原码的操作分两种情况:
  (1)如果补码的符号位为“0”,表示是一个正数,其原码就是补码。
  (2)如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。
  另一种方法求负数的补码如下:
  例如:求-15的补码
  第一步:+15:00001111
  第二步:从右向左找到第一个1,然后把左边的所有位取反
  11110001


原文地址: 二进制--补码简介 | http://orgcent.com/binary-complemental-code-profile/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值