二进制相减的算法图解
❶ 二进制的减法是什么原理
二进制的原理如下:
一、加法法则: 0+0=0,0+1=1,1+0=1,1+1=0
二、减法,当需要向上一位借数时,必须把上一位的1看成下一位的(2)10。减法法则: 0-0 =0,1-0=1,1-1=0,0-1=1 有借位,借1当(10) 看成 2 则 0 - 1 - 1 = 0 有借位 1 - 1 - 1 = 1 有借位。
三、乘法法则: 0×0=0,0×1=0,1×0=0,1×1=1
四、除法应注意: 0÷0 =0(无意义),0÷1 =0,1÷0 =0(无意义)
除法法则: 0÷1=0,1÷1=1
(1)二进制相减的算法图解扩展阅读
二进制就是一直循环,直到达到精度限制才停止(所以,计算机保存的小数一般会有误差,所以在编程中,要想比较两个小数是否相等,只能比较某个精度范围内是否相等。)。这时,十进制的0.65,用二进制就可以表示为:0.1010011。
在现实生活和记数器中,如果表示数的“器件”只有两种状态,如电灯的“亮”与“灭”,开关的“开”与“关”。一种状态表示数码0,另一种状态表示数码1,1加1应该等于2,因为没有数码2,只能向上一个数位进一,就是采用“满二进一”的原则,这和十进制是采用“满十进一”原则完全相同。
❷ 二进制算法教程是怎么样的
二进制的运算算术运算二进制的加法:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位进位);即7=111,10=10103=11。
二进制的减法:0-0=0,0-1=1(向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算) ;
二进制的乘法:0 * 0 = 00 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二进制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1 ;
逻辑运算二进制的或运算:遇1得1 二进制的与运算:遇0得0 二进制的非运算:各位取反。
二进制转换为其他进制:
二进制数除法与十进制数除法很类似。可先从被除数的最高位开始,将被除数(或中间余数)与除数相比较,若被除数(或中间余数)大于除数,则用被除数(或中间余数)减去除数,商为1,并得相减之后的中间余数,否则商为0。
再将被除数的下一位移下补充到中间余数的末位,重复以上过程,就可得到所要求的各位商数和最终的余数。
❸ 二进制计算方法是什么
加法:
(1)首先是最右数码位相加。这里加数和被加数的最后一位分别为“0”和“1”,根据加法原则可以知道,相加后为“1”。
(2)再进行倒数第二位相加。这里加数和被加数的倒数第二位都为“1”,根据加法原则可以知道,相加后为“(10)2”,此时把后面的“0”留下,而把第一位的“1”向高一位进“1”。
(3)再进行倒数第三位相加。这里加数和被加数的倒数第二位都为“0”,根据加法原则可以知道,本来结果应为“0”,但倒数第二位已向这位进“1”了,相当于要加“被加数”、“加数”和“进位”这三个数的这个数码位,所以结果应为0 1=1。
(4)最后最高位相加。这里加数和被加数的最高位都为“1”,根据加法原则可以知道,相加后为“(10)2”。一位只能有一个数字,所以需要再向前进“1”,本身位留下“0”,这样该位相加后就得到“0”,而新的最高位为“1。
减法:
(1)首先最后一位向倒数第二位借“1”,相当于得到了(10)2,也就是相当于十进制数中的2,用2减去1得1。
(2)再计算倒数第二位,因为该位同样为“0”,不及减数“1”大,需要继续向倒数第三位借“1”(同样是借“1”当“2”),但因为它在上一步中已借给了最后一位“1”(此时是真实的“1”),则倒数第二位为1,与减数“1”相减后得到“0”。
(3)用同样的方法倒数第三位要向它们的上一位借“1”(同样是当“2”),但同样已向它的下一位(倒数第二位)借给“1”(此时也是真实的“1”),所以最终得值也为“0”。
(4)被减数的倒数第四位尽管与前面的几位一样,也为“0”,但它所对应的减数倒数第四位却为“0”,而不是前面几位中对应的“1”,它向它的高位(倒数第五位)借“1”(相当于“2”)后,在借给了倒数第四位“1”(真实的“1”)后,仍有“1”余,1 –0=1,所以该位结果为“1”。
(5)被减数的倒数第五位原来为“1”,但它借给了倒数第四位,所以最后为“0”,而此时减数的倒数第五位却为“1”,这样被减数需要继续向它的高位(倒数第六位)借“1”(相当于“2”),2–1=1。
(6)被减数的最后一位本来为“1”,可是借给倒数第五位后就为“0”了,而减数没有这个位,这样结果也就是被减数的相应位值大小,此处为“0”。
在二进制数的加、减法运算中一定要联系上十进制数的加、减法运算方法,其实它们的道理是一样的,也是一一对应的。在十进制数的加法中,进“1”仍就当“1”,在二进制数中也是进“1”当“1”。在十进制数减法中我们向高位借“1”当“10”,在二进制数中就是借“1”当“2”。而被借的数仍然只是减少了“1”,这与十进制数一样。
乘法:
把二进制数中的“0”和“1”全部当成是十进制数中的“0”和“1”即可。根据十进制数中的乘法运算知道,任何数与“0”相乘所得的积均为“0”,这一点同样适用于二进制数的乘法运算。只有“1”与“1”相乘才等于“1”。乘法运算步骤:
(1)首先是乘数的最低位与被乘数的所有位相乘,因为乘数的最低位为“0”,根据以上原则可以得出,它与被乘数(1110)2的所有位相乘后的结果都为“0”。
(2)再是乘数的倒数第二位与被乘数的所有位相乘,因为乘数的这一位为“1”,根据以上原则可以得出,它与被乘数(1110)2的高三位相乘后的结果都为“1”,而于最低位相乘后的结果为“0”。
(3)再是乘数的倒数第三位与被乘数的所有位相乘,同样因为乘数的这一位为“1”,处理方法与结果都与上一步的倒数第二位一样,不再赘述。
(4)最后是乘数的最高位与被乘数的所有位相乘,因为乘数的这一位为“0”,所以与被乘数(1110)2的所有位相乘后的结果都为“0”。
(5)然后再按照前面介绍的二进制数加法原则对以上四步所得的结果按位相加(与十进制数的乘法运算方法一样),结果得到(1110)2×(0110)2=(1010100)2。
除法:
(1)首先用“1”作为商试一下,相当于用“1”乘以除数“110”,然后把所得到的各位再与被除数的前4位“1001”相减。按照减法运算规则可以得到的余数为“011”。
(2)因为“011”与除数“110”相比,不足以被除,所以需要向低取一位,最终得到“0111”,此时的数就比除数“110”大了,可以继续除了。同样用“1”作为商去除,相当于用“1”去乘除数“110”,然后把所得的积与被除数中当前四位“0111”相减。根据以上介绍的减法运算规则可以得到此步的余数为“1”。
(3)因为“1”要远比除数“110”小,被除数向前取一位后为“11”,仍不够“110”除,所以此时需在商位置上用“0”作为商了。
(4)然后在被除数上继续向前取一位,得到“110”。此时恰好与除数“110”完全一样,结果当然是用“1”作为商,用它乘以除数“110”后再与被除数相减,得到的余数正好为“0”。证明这两个数能够整除。
这样一来,所得的商(1101)2就是两者相除的结果。
❹ 二进制减法怎么算
1、二进制减法:
0-0=0,10-1=1(向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算) 。
2、二进制的加法:
0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位进位)。
3、二进制的乘法:
0 * 0 = 00 * 1 = 0,1 * 0 = 0,1 * 1 = 1。
4、二进制的除法:
0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1。
(4)二进制相减的算法图解扩展阅读
计算机采用二进制原因
二进位计数制仅用两个数码。0和1,所以,任何具有二个不同稳定状态的元件都可用来表示数的某一位。而在实际上具有两种明显稳定状态的元件很多。
例如,氖灯的"亮"和"熄";开关的”开“和”关“; 电压的”高“和”低“、”正“和”负“;纸带上的”有孔“和“无孔”,电路中的”有信号“和”无信号“, 磁性材料的南极和北极等等,不胜枚举。
利用这些截然不同的状态来代表数字,是很容易实现的。不仅如此,更重要的是两种截然不同的状态不单有量上的差别,而且是有质上的不同。这样就能大大提高机器的抗干扰能力,提高可靠性。而要找出一个能表示多于二种状态而且简单可靠的器件,就困难得多了 。
❺ 二进制减法10010010减01010011详细算法
10010010
— 01010011
————————
00111111
二进制的减法运算法则是:
0-0=1-1=0
1-0=1
0-1=1(向高位借位)
❻ 二进制加减乘除如何算,高手来啊!
二进制遵循以下法则:0+0=0、0+1=1、1+0=1、1+1=0 进位、0-0=0、0-1=1 借位。
代入计算得10000-111=1001。
二进制乘法:(如10111<<1000代表在10111后面添加3个零)
10010<<10000=100100000
10010<<1000=10010000
10010<<10=100100
最后相加,得
100100000+10010000+100100
=110110000+100100
=111010100
(6)二进制相减的算法图解扩展阅读:
二进制优点
1、数字装置简单可靠,所用元件少。
2、只有两个数码0和1,因此它的每一位数都可用任何具有两个不同稳定状态的元件来表示。
3、基本运算规则简单,运算操作方便。
二进制缺点
用二进制表示一个数时,位数多。因此实际使用中多采用送入数字系统前用十进制,送入机器后再转换成二进制数,让数字系统进行运算,运算结束后再将二进制转换为十进制供人们阅读。
二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。
❼ 计算机二进制减法,借一当二,是怎么计算的
借一当二就是两个数相减时,被减数的某位数一可以在下一位数中当做二使用 如110-1=101(110中第二个1可以拿到下一位当做2使用,即110等价于102)。
从右向左依次相减,1-0=1 , 0-1向前借2=1 , 1-1向后借了一位为0需向前借2,再减1=1 , 0-1向后借了一位为-1需向前借2,再减1=0 , 1向后借了一位为0, 0-0=0。
(7)二进制相减的算法图解扩展阅读:
计算机采用二进制原因
1、二进位计数制仅用两个数码。0和1,所以,任何具有二个不同稳定状态的元件都可用来表示数的某一位。
2、二进位计数制的四则运算规则十分简单。而且四则运算最后都可归结为加法运算和移位,这样,电子计算机中的运算器线路也变得十分简单了。不仅如此,线路简化了,速度也就可以提高。
3、在电子计算机中采用二进制表示数可以节省设备。可 以从理论上证明,用三进位制最省设备,其次就是二进位制。
❽ 二进制减法怎么算啊 借位我弄不明白 给我讲明白地我追加200分
110000减10111 等于11001。
1、我们用在某位上方有标记点表示该位被借位。具体过程为从被减数的右边第一位开始减去减数,在本例中,由于0减1而向右数第二位借位,借1在十进制里是借了10,但在二进制里是借了2,故借来了2后,这里的计算是2+0-1=1,在竖式的右数第1位写上1;
2、然后据继续往左边计算,右数第二位不够减,继续向前面借位,故借来了2后,这里的计算是2-1+0-1=0,注意这里要先减去借给右数第一位的1,再开始计算,则在竖式的右数第2位写上0;
3、同理,右数第三位不够减,继续向前面借位,借来了2后,这里的计算也是2-1+0-1=0,则在竖式的右数第3位写上0;
4、到了右数第四位,依然要向前面借位,借来了2后,这里的计算是2-1+0-0=1,则在竖式的右数第4位写上1;
5、到了右数第五位,以为给第四位借去了1,故这里变成了0,不够减下面的1,需继续向前面借位,借来了2后,这里的计算是2-1(借去的1)+1(原本有的1)-1(下面的1)=1,则在竖式的右数第5位写上1;
所以二进制的减法110000减10111 等于11001。
(8)二进制相减的算法图解扩展阅读:
二进制的减法运算法则:
当需要向上一位借数时,必须把上一位的1看成下一位的(2)10。
0-0 =0;
1-0=1;
1-1=0;
0-1=1 有借位,借1当(10) 看成 2, 则 0+ 2 - 1 =1。
❾ 二进制减法怎么算啊(详细,好的话追加100分)
二进制的减法原则:0-0=0,0-1=1(类似于十进制减法,需向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算) 。
比如1100-1001,按照以上法则可得结果为1100-1001=0011。这个算式换成十进制就是12-9=3,可以看到换成十进制进行检验也是正确的。
莱布尼兹也是第一个认识到二进制记数法重要性的人,并系统地提出了二进制数的运算法则。二进制对200多年后计算机的发展产生了深远的影响。他于1716年发表了《论中国的哲学》一文,专门讨论八卦与二进制,指出二进制与八卦有共同之处。
(9)二进制相减的算法图解扩展阅读:
一、二进制转换为其他进制:
1、二进制转换成十进制:基数乘以权,然后相加,简化运算时可以把数位数是0的项不写出来,(因为0乘以其他不为0的数都是0)。小数部分也一样,但精确度较少。
2、二进制转换为八进制:采用“三位一并法”(是以小数点为中心向左右两边以每三位分组,不足的补上0)这样就可以轻松的进行转换。例:将二进制数(11100101.11101011)2转换成八进制数。 (11100101.11101011)2=(345.726)8
3、二进制转换为十六进制:采用的是“四位一并法”,整数部分从低位开始,每四位二进制数为一组,最后不足四位的,则在高位加0补足四位为止,也可以不补0;小数部分从高位开始,每四位二进制数为一组,最后不足四位的,必须在低位加0补足四位,然后用对应的十六进制数来代替,再按顺序写出对应的十六进制数。
例:将二进制数(10011111011.111011)2转换成十六进制数。(10011111011.111011)2=(4FB.EC)16
二、其他进制转换为二进制:
1、十进制转换为二进制
整数转换:采用连续除基取余,逆序排列法,直至商为0。
小数转换:采用连续乘基(即2)取整,顺序排列法。例(0.8125)10=(0.1101)2。步骤:0.8125*2=1.625,0.625*2=1.25,0.25*2=0.5,0.5*2-=1.0,则正向取整得(0.1101)2。
2、八进制转换为二进制:把每一位八进制数对应转换为一个三位二进制数。例(745.361)8= (111100101.011110001)2
3、十六进制转换为二进制:把每一位十六进制数对应转换为一个四位二进制数。
❿ 二进制的加减法
1、二进制的加法:二进制加法运算法则:加法算式和十进制加法一样,把右边第一位对齐,依次相应数位对齐,各数位满二向上一位进一。主要是因为二进制各位上的数必须小于2以及大于等于2就要进位的特点。
2、减法:同样的,因为二进制各数位上具有必须小于2、大于等于2就要进位以及不够减需要借“1”的特点,于是就可以得到二进制的减法运算法则;二进制加减法运算法则:将右边第一位对齐,依次相应数位对齐,依次做减法,同一数位不够减时向高位“借一”,“借一当二”。
(10)二进制相减的算法图解扩展阅读:
二进位计数制仅用两个数码。0和1,所以,任何具有二个不同稳定状态的元件都可用来表示数的某一位。而在实际上具有两种明显稳定状态的元件很多。例如,氖灯的"亮"和"熄";开关的”开“和”关“; 电压的”高“和”低“、”正“和”负“;纸带上的”有孔“和“无孔”,电路中的”有信号“和”无信号“, 磁性材料的南极和北极等等,不胜枚举。
利用这些截然不同的状态来代表数字,是很容易实现的。不仅如此,更重要的是两种截然不同的状态不单有量上的差别,而且是有质上的不同。这样就能大大提高机器的抗干扰能力,提高可靠性。而要找出一个能表示多于二种状态而且简单可靠的器件,就困难得多了。