如何手动查找给定十进制数的最后一位(二进制)

时间:2017-01-22 15:43:49

标签: math binary numbers decimal

我想知道是否有办法找到给定十进制数的最后几位。我想亲自计算一下。

例如,如果我有133和255,我怎么能找到二进制的最后两位,而不重复2?

1 个答案:

答案 0 :(得分:1)

这是一种简单的方法,可以找到十进制数的两个最低有效位,适合你的头脑。

你只需要最后两位小数,所以扔掉(精神上)其余的数字。因此,您的示例为33和55.查看最后一个十进制数字:如果是奇数,则最低有效数字为1;如果是偶数,则最低有效位为0.在您的示例中,最后一位数字为3和5,因此它们都具有最后一位二进制数字1。

如果我们在最后一步得到的二进制数字是1,则从数字中减去1。所以你的例子现在是32和54.现在我们看看这两个最后的十进制数字。如果最后一个十进制数字可以被4整除(即它是0,4或8)并且倒数第二个十进制数字是偶数,则倒数第二个二进制数字是0.如果最后一个十进制数字不是可被4整除(即它是2或6),倒数第二个十进制数字是奇数,倒数第二个数字是0.否则,倒数第二个数字是1.在第一个例如,我们现在有32,最后一个十进制数字是2​​,不是在第一个列表而是在第二个,而倒数第二个十进制数字是奇数,所以倒数第二个数字是0。你的第二个例子,我们现在有54个,最后一个十进制数字是4,在第一个列表中,倒数第二个十进制数字是奇数,所以倒数第二个数字是1.因此,133结束使用二进制01,而255以二进制结束11。

如果你不喜欢上一条规则,你可以用不同的方式表达。如果该步骤中的两位数字可被4整除,则倒数第二个二进制数字为0,否则为1.在您的示例中,32可被4整除,因此我们得到0位,但54不是可以被4整除,所以我们得到1位。结果是一样的,但第二种方法需要你似乎想要避免的划分,而第一种方法避免划分但需要更多的内存工作。