原码反码补码:计算机整数的运算为啥用补码?运算过程举例理解
原码 反码 补码基本知识
- 正整数:原码、反码、补码均是原码本身
- 负整数:反码 = 原码按位取反(符号位除外) 补码 = 反码+1
例如
byte 1
原码:0000 0001
反码:0000 0001
补码:0000 0001
byte -3
原码:1000 0011
反码:1111 1100 (原码按位取反,符号位除外)
补码:1111 1101 (反码+1)
为啥要用补码
正负数,在计算机中存放的格式,就是补码。计算机中,并没有原码和反码,也就不必关心它们了。下面,针对补码,给出解释。
比如,有一个小孩,很小的。他只认识 100 个数(0~99),也不会做减法。那么,就可以告诉他:“减一”,就用“加 99”算吧。
36 - 1 = 35
36 + 99 = (1) 35
忽略进位的 100,结果不是一样的吗?
那么,就是说:
99,就是-1 的补数。
98,就是-2 的补数。
。。。
利用“补数”,就可把“减法”转为“加法”。利用这个特点,计算机中,仅需一个“加法器”,就够用了。
用补码进行计算的过程
本文来自博客园,作者:HumorChen99,转载请注明原文链接:https://www.cnblogs.com/HumorChen/p/18039612
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~