当前位置: 首页 > news >正文

JAVA的计算方式

原码是最简单的机器数表示法,用最高位表示符号位,其他位存放该数的二进制的绝对值。但原码最大的问题在于一个数加上它的负数不等于0,于是反码的设计思想就是为了解决这个问题。既然一个负数时一个正数的相反数,干脆把一个正数的二进制按位取反来表示它的负数。于是正数的反码和原码一致,而负数的反码就是它的原码除符号位外,按位取反。从表现形式看,正数的原码、反码、补码都一致,而负数的补码等于反码+1。
由于原码的计算逻辑缺陷,导致它进行正负相加计算时容易出现错误答案,因此我们可以设置一个较大的正数和一个绝对值相对较小的负数进行相加,看最后答案是正是负。而通过分析反码的计算逻辑能发现它的缺陷,就是它可以出现-0的情况,因此我们可以设置一对相反数,让他们相加,看最后结果是否是正常的0。于是我们可以设置以下程序:
int a=5;
int b=-5;
int c=-3;
System.out.println(a+c);
System.out.println(a+b);
然后得到以下结果:
2
0
因此仅用排除法我们可得:JAVA计算用的是补码

http://www.hskmm.com/?act=detail&tid=15179

相关文章:

  • 安装 elasticsearch-9.1.4 - 集群 和 kibana-9.1.4
  • 反码 原码 补码
  • 线性结构常见应用之栈[基于郝斌课程]
  • 实测对比:权威榜单之公众号排版Top 5(含效果对比与适用建议)
  • go的泛型
  • 原码补码反码
  • lc1034-边界着色
  • 【汽车电子】汽车功能安全标准 ISO 26262
  • ISO 26262的不同安全等级:ASIL-D ASIL-C ASIL-B ASIL-A
  • C#学习1
  • 02020405 EF Core基础05-EF Core反向工程、EF Core和ADO.NET Core的联系、EF Core无法做到的事情
  • 02020406 EF Core基础06-EF Core生成的SQL
  • Gemini-2.5-Flash-Image-Preview 与 GPT-4o 图像生成能力技术差异解析​ - 教程
  • 新学期每日总结(第2天)
  • 在CodeBolcks下wxSmith的C++编程教程——使用菜单和组件
  • 单调队列
  • 软工第一次编程
  • 第二次软工作业
  • 9.23总结
  • 日志|力扣|不同路径|最小路径和|动态规划|Javase|IO|File|Javaweb
  • 如何建立 5 μm 精度的视觉检测?不仅仅是相机的事
  • 函数 cmd_info_change_cur_model_group
  • 线程--相关概念、两种创建线程的方式
  • 恢复某个数据文件不适当,导致DataGuard无法open数据库
  • Nginx 部署及配置
  • vite静态资源处理
  • 洛谷B4040 [GESP202409 四级] 黑白方块 题解
  • SerpApi:一站式搜索引擎数据抓取API完全指南
  • 补whk时的鲜花(持续更新)
  • css 使用记录 随笔