前言:
目前你们对“二进制运算方法”可能比较讲究,咱们都想要分析一些“二进制运算方法”的相关内容。那么小编同时在网摘上搜集了一些对于“二进制运算方法””的相关知识,希望咱们能喜欢,姐妹们一起来学习一下吧!回顾十进制的长除法。十进制是以10为基数的数制,我们日常使用的数字都是十进制数字。如果你已经很久没有做过长除法,不妨利用算题172 ÷ 4来复习一下。如果你对这部分的内容十分熟悉,请直接跳到下一步,学习二进制的长除法。
被除数除以除数,所得结果为商。比较除数和被除数的首位数。如果除数比较大,就继续将下一位数加到被除数中,直至被除数大于被除数。例如,用172 ÷ 4时,我们会比较4和1,发现4 > 1后,就比较4和17。在比较的被除数的最后一位上写下商的首位数。比较4和17,我们发现17整除4得4,因此,我们将商的首位数4写到7的上面。相乘和相减后得到余数。用商的位值乘以除数,本题中即4 x 4 = 16。在17下面写16,然后用17 - 16,得到余数1。重复。再次将除数4与余数1比较,发现4 > 1,“结合”被除数的下一位数,然后比较4和12。12是4的三倍,而且没有余数,所以将3写作商的下一位数。答案是43。
列出二进制的长除法问题。以10101 ÷ 11为例。将问题写成长除法形式,以10101为被除数,11为除数。在上面留出空处写商,下面写下计算过程。
比较除数和被除数的首位数。二进制长除法的解题方法与十进制长除法一样,但实际上前者要简单得多。整除被除数时,每一位的结果要么等于0,要么等于1:
11 > 1,所以1“无法”整除11。在商的第一位,也就是被除数首位数字的上方,写一个0。
继续加入下一位数,直到结果为1。以下是例题后面的计算步骤:
结合被除数的下一位数。11 > 10。在商的位置再写一个0。结合下一位数。11 < 101。在商的位置再写一个1。
计算余数。和十进制的乘除法一样,我们用刚刚算出的1乘以除数11,然后将结果与刚才计算中被除的几位数对齐,写到被除数下面。在二进制中,由于1乘以除数总是等于除数,我们可以将之简化:
在被除数下面写下除数。这里,我们将11与被除数的前三位数101对齐,写到它的下面。计算101 - 11,得到余数10。如果需要复习二进制数的减法运算,可以参阅本网站的相关文章。
重复这一步骤,直至问题解决。将被除数的下一位数与余数结合,得到100。由于11 < 100,所以在商的下一位数写1。使用之前的方法,继续计算:
在100下面写11,相减得到1。结合被除数的最后一位数,得到11。11 = 11,所以商或答案的最后一位数写1。没有余数,因此问题得到解决。答案是00111,或者简化成111。
如有必要,添加小数点。有时,结果不是整数。如果使用最后一位数后仍有余数,就在被除数后面加”.0”,在上面加”.”,这样,你可以再次结合下一位数,并继续计算。重复这一步骤,直至答案足够精确,然后四舍五入。在纸上计算时,你可以去掉最后一位数的0,取整,如果最后一位数是1,就去掉这个1,然后在新的最后一位数字上加1。在编程中,请遵循某种四舍五入的标准算法,以避免在二进制数和十进制数之间转换时出错。[3]
二进制除法的结果通常包含循环小数,这种情况比十进制数制多。[4]由于“小数点”(decimal point)只用于十进制,所以在任何其他数制中,我们会使用更通用的术语“小数点”(radix point)。