java中原码、反码与补码的问题分析

 更新时间:2013年04月27日 10:43:22   作者:  
本篇文章介绍了,在java中原码、反码与补码的问题分析。需要的朋友参考下
1.原码、反码和补码定义

1.原码

将最高位作为符号位(以0代表正,1代表负),其余各位代表数值本身的绝对值(以二进制表示)。
为了简单起见,我们用1个字节来表示一个整数。
     +7的原码为: 00000111
     -7的原码为: 10000111

2.反码

一个数如果为正,则它的反码与原码相同;一个数如果为负,则符号位为1,其余各位是对原码取反。
为了简单起见,我们用1个字节来表示一个整数:
     +7的反码为:00000111
     -7的反码为: 11111000

3.补码

补码:一个数如果为正,则它的原码、反码、补码相同;一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1。为了简单起见,我们用1个字节来表示一个整数:
+7的补码为: 00000111
-7的补码为: 11111001

已知一个负数的补码,将其转换为十进制数,步骤:
      1、先对各位取反;
      2、将其转换为十进制数;
      3、加上负号,再减去1。
      例如:
      11111010,最高位为1,是负数,先对各位取反得00000101,转换为十进制数得5,加上负号得-5,再减1得-6。

2.常见问题

我把int a=232;进行强转为byte类型时为什么是负数???

您可能感兴趣的文章:

相关文章

  • 如何通过源码了解Java的自动装箱拆箱详解

    如何通过源码了解Java的自动装箱拆箱详解

    装箱就是把基本类型转换成包装类,拆箱就是把包装类转换成基本类型,下面这篇文章主要给大家介绍了关于如何通过源码了解Java的自动装箱拆箱的相关资料,需要的朋友可以参考下
    2022-04-04
  • 如何用Springboot Admin监控你的微服务应用

    如何用Springboot Admin监控你的微服务应用

    这篇文章主要介绍了如何用Springboot Admin监控你的微服务应用,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下。
    2021-01-01
  • Mybatis中的延迟加载详细解读

    Mybatis中的延迟加载详细解读

    这篇文章主要介绍了Mybatis中的延迟加载详细解读,Mybatis中延迟加载又称为懒加载,是指在进行关联查询时,按照设置延迟规则推迟对关联对象的select查询,延迟加载可以有效的减少数据库的压力,需要的朋友可以参考下
    2023-10-10
  • java实现饭店点菜系统

    java实现饭店点菜系统

    这篇文章主要为大家详细介绍了java实现饭店点菜系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • 关于Java Interface接口的简单练习题

    关于Java Interface接口的简单练习题

    这篇文章主要给大家分享的是关于Java Interface接口的简单练习题,难度不算大,但是要有一个清晰的逻辑建立接口和链接Java类。下面来看看文章的详细介绍吧,需要的朋友可以参考一下
    2021-11-11
  • 在java中用Scanner类读入单个字符的方法

    在java中用Scanner类读入单个字符的方法

    今天小编就为大家分享一篇在java中用Scanner类读入单个字符的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • hutool实战:IoUtil 流操作工具类(将内容写到流中)

    hutool实战:IoUtil 流操作工具类(将内容写到流中)

    这篇文章主要介绍了Go语言的io.ioutil标准库使用,是Golang入门学习中的基础知识,需要的朋友可以参考下,如果能给你带来帮助,请多多关注脚本之家的其他内容
    2021-06-06
  • 如何在spring boot项目中使用Spring Security的BCryptPasswordEncoder类进行相同密码不同密文的加密和验证

    如何在spring boot项目中使用Spring Security的BCryptPasswordE

    本文介绍如何在Spring Boot项目中通过修改pom.xml引入安全依赖,添加配置类以解除默认的HTTP请求拦截,以及如何创建BCryptPasswordEncoder对象进行密码的加密和匹配,通过这些步骤,可以有效地增强应用的安全性
    2023-08-08
  • Java中复杂的Synchronized关键字使用方法详解

    Java中复杂的Synchronized关键字使用方法详解

    Synchronized关键字是一个种锁,其有很多名字,例如重量级锁、悲观锁、可重入锁、、非公平、对象锁等等,这篇文章主要给大家介绍了关于Java中复杂的Synchronized关键字使用方法的相关资料,需要的朋友可以参考下
    2024-01-01
  • java音频播放示例分享(java如何播放音频)

    java音频播放示例分享(java如何播放音频)

    java如何播放音频?下面的代码就介绍了java音频播放示例,需要的朋友可以参考下
    2014-04-04

最新评论