二进制加减法运算法则

 我来答
季平
2015-01-05 · 知道合伙人教育行家
季平
知道合伙人教育行家
采纳数:3614 获赞数:28137
毕业于吉林师范大学汉语言文学系,学士学位。统一教育专家。

向TA提问 私信TA
展开全部
1.二进制加法运算法则:
0+0=0,0+1=1,1+0=1,1+1=10 ,也就是当两个相加的二进制位仅一位为1时,相加的结果为1;如果两个二进制位全是0,相加的结果仍为0;而如果两个相加的二进制位均为1,则结果为10(相当于十进制中的2),也就是“逢2进1”规则,与十进制中的“逢10进1”的道理一样。
2.二进制减法运算法则:
1-1=0,1-0=1,0-0=0,0-1=-1,也就是当两个相加的二进制位中同为0或1时,相减的结果为0;如果被减数的二进制位为1,而减数的二进制位为0,则相减的结果仍为1;而如果被减数的二进制位为0,而减数的二进制位为1,则需要向高位借1,但此时是借1当2,与十进制中的借1当10道理一样。
芭瑞丝猫CT
2018-05-09 · TA获得超过11.8万个赞
知道答主
回答量:90
采纳率:58%
帮助的人:3.9万
展开全部

减法运算其实是可以由加法运算替代的,我们上面已经介绍过了无符号和补码的非,其实很多CPU是没有减法运算器的,它们都是将减数进行逆运算以后送入加法器,然后进行加法运算,这样得出来的结果就是减法运算最终的结果。

比如我们考虑一种简单的情况,当w = 4时的无符号减法运算,对于 5 - 4这个减法运算来说,我们可以由 5 + 4-1(其中4-1是4的逆元的意思,不是1/4的意思)来替代这个减法运算。

为了更加直观,LZ带各位来算一下,首先4的逆元根据上面的公式可以得到为 4-1 = 24 - 4 = 12 。那么我们现在需要对5和12进行加法运算,它们的位表示分别为 0101和1100,结果为10001,也就是十进制17的位表示。不过由于我们的w = 4,因此截断之后结果为0001,也就是十进制的1。最终可以得到 5 - 4 = 1。

对于5 - 4来说,是考虑的结果为正的情况。或许有的猿友会对结果为负或者说是无符号数溢出的情况下有疑问,因此LZ这里对这种情况也做一个简单的介绍。我们考虑一个简单的计算 0 - 1,我们可以得到1-1 = 24 - 1 = 15。此时对0和15进行加法运算,他们的位表示分别为0000和1111,结果为1111。

看到这里估计有的猿友会奇怪了,这怎么回事,0 - 1 = 15?

当然不是,这个结果其实是正确的。考虑使用补码编码来解析1111这个位表示,它代表的值就是-1。15是1111这个位表示在无符号编码情况下的解析结果。

因此LZ这里也给出一个公式,就是对于两个整数x和y来说,x - y = x + y-1。这里需要特别说明的是,这个公式代表的意义是位表示,而不是实际的数值。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦莹河CN
高粉答主

2019-11-01 · 每个回答都超有意思的
知道小有建树答主
回答量:6.9万
采纳率:17%
帮助的人:3185万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
MY小郁郁
高粉答主

2018-03-29 · 说的都是干货,快来关注
知道小有建树答主
回答量:175
采纳率:100%
帮助的人:2.2万
展开全部

1、二进制的运算算术运算二进制的加法:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位进位);即7=111,10=1010 3=11。

2、二进制的减法:0-0=0,0-1=1(向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算) 。

3、二进制的乘法:0 * 0 = 0 0 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二进制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1 。

4、逻辑运算二进制的或运算:

  • 遇1得1 二进制的与运算。

  • 遇0得0 二进制的非运算:各位取反。

二进制:是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。

【优点】:

  1. 数字装置简单可靠,所用元件少。

  2. 只有两个数码0和1,因此它的每一位数都可用任何具有两个不同稳定状态的元件来表示。

  3. 基本运算规则简单,运算操作方便。

【缺点】:

  1. 用二进制表示一个数时,位数多。因此实际使用中多采用送入数字系统前用十进制,送入机器后再转换成二进制数,让数字系统进行运算,运算结束后再将二进制转换为十进制供人们阅读。

  2. 二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。

【采用原因】:

  1. 技术实现简单,计算机是由逻辑电路组成,逻辑电路通常只有两个状态,开关的接通与断开,这两种状态正好可以用“1”和“0”表示。

  2. 简化运算规则:两个二进制数和、积运算组合各有三种,运算规则简单,有利于简化计算机内部结构,提高运算速度。

  3. 适合逻辑运算:逻辑代数是逻辑运算的理论依据,二进制只有两个数码,正好与逻辑代数中的“真”和“假”相吻合。

  4. 易于进行转换,二进制与十进制数易于互相转换。

  5. 用二进制表示数据具有抗干扰能力强,可靠性高等优点。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5c7e4f1
2018-03-23
知道答主
回答量:2
采纳率:0%
帮助的人:1624
展开全部
二进制相加减怎么算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式