专栏导航
本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。
(一)WIn32 专栏导航
下一篇:无
(二)MFC 专栏导航
下一篇:无
本节前言
在上一节,我们讲解了八进制加法。本节,我们来讲解八进制减法。
一. 十进制减法与八进制减法
在十进制减法里面,我们一般是列竖式计算。从计算个位的减法,再计算十位的,百位的,等等。总之,先计算低位的减法,再计算高位的减法。某一位不够减,则要向高位借位,借一当十。
八进制减法与十进制减法,其实是差不多的。都是说,先计算低位的减法,再计算高位的减法。某一位不够减,也要向高位借位。区别在于,八进制减法是借一当八。
对于八进制减法,我觉得,没啥好讲的。咱们还是看几个例子吧。
我能够想到的,只是说,通过几个例题,由大家自己来体会着二进制减法的计算法则。
二. 例题
例题1
计算 0361 - 0273
位0 的情况,01 - 03,显然地,不够减。所以呢,需要向高位借1,八进制减法的规则是借一当八。借1 之后,原本的 01 - 03,变为 01 + 8 - 03 = 9 - 3 = 6 。所以呢,结果是,位0 为6,需要借位。
位1 的情况,06 - 07 。位0 有借位,所以呢,06 - 07,变为 05 - 07 。05 - 07,不够减,所以呢,需要向高位借位,八进制减法的规则是借一当八。借1 之后,原本的 05 - 07,变为 05 + 8 - 07 = 13 - 7 = 6 。所以呢,结果是,位1 为6,需要借位。
位2 的情况,03 - 02 。位1 有借位,所以,03 - 02 变为 02 - 02 。结果是,位2 位0,无须借位。
小结一下,位2 为 0,位1 为6,位0 为6 。所以呢,计算结果为 066 。
例题2
计算 0501 - 0226
位0 的情况,01 - 06,不够减。所以呢,需要向高位借1,八进制减法的规则是借一当八。借1 之后,原本的 01 - 06,变为 01 + 8 - 06 = 9 - 6 = 3.所以呢,结果是,位0 为3,需要借位。
位1 的情况,00 - 02 。位0 有借位,所以呢,减号左边的数需要减 1 。可是,此时,减号左边的数已经为 0,不足以减 1 。所以呢,本数位,需要让左边的数先向高位借1 。借1 之后,再减1,以处理位0 的借位。所以呢,原本的 00 - 02,变为 8 - 01 - 02 = 5 。所以呢,结果为,位1 为5,需要借位。
位2 的情况,05 - 02 。位1 有借位,所以呢,原本的 05 - 02,变为 04 - 02 。结果为,位2 为2,无须借位。
小结一下,位2 为2,位1 为5,位0 为3 。所以呢,计算结果为 0253 。
例题3
计算 0342 - 0613
位0 的情况,02 - 03,不够减。所以呢,需要向高位借1,八进制减法的规则是借一当八。借1 之后,原本的 02 - 03,变为 02 + 8 - 03 = 10 - 3 = 7 。所以呢,结果为,位0 为7,需要借位。
位1 的情况,04 - 01 。由于位0 有借位,所以呢,原本的 04 - 01 变为 03 - 01 。结果为,位1 为 2,无须借位。
位2 的情况,03 - 06,不够减,需要借位。可是呢,两个数都是三位的,最高的数位,就是位2,不存在更高的位了。向谁借位呢?这个我们不用管,只管去借位。借位之后,原本的 03 - 06,变为 03 + 8 - 06 = 11 - 06 = 5 。所以呢,结果为,位2 为5,需要借位。
小结一下,位2 为5,位1 为2,位0 为7 。所以呢,计算结果为 0527 。
例题小结
我想,在这里,两道例题,应该可以说明一点八进制减法的情形了。
有可能,我这里所设置的例题,还不足以覆盖八进制减法的所有类型。若以后我发现了其他的类型,可能,我会去添加例题的。当然了,你有好的建议,也欢迎提出来。
结束语
本节不难。希望大家能够学好二进制减法。
专栏导航
本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。
(一)WIn32 专栏导航
下一篇:无
(二)MFC 专栏导航
下一篇:无