关于用补码来实现减法的背后的数学原理

关于用补码来实现减法的背后的数学原理

xy=x+y

这是为什么?

我们知道:

负数的补码 = 反码 + 1

我们假设这是一个八位的二进制数, 那么我们可以知道, 数据的周期为 (100000000)2

现在有两个八位二进制数 xy(x,y>0) ,那么我们可以得出:

xy=xy+(100000000)2

即:

xy=xy+(11111111)2+1

我们调整一下顺序:

xy=x+(11111111)2y+1

我们知道, y 的反码为 (11111111)2y

所以:

xy=x+y

posted @   sshadows  阅读(177)  评论(1)    收藏  举报
相关博文:
阅读排行:
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 管理100个小程序-很难吗
· 基于Blazor实现的运输信息管理系统
· 如何统计不同电话号码的个数?—位图法
· 聊聊四种实时通信技术:长轮询、短轮询、WebSocket 和 SSE
历史上的今天:
2021-09-06 [NOI2001] 炮兵阵地
2021-09-06 [USACO06NOV] Corn Fields G
2019-09-06 放苹果
点击右上角即可分享
微信分享提示