如何用JS实现平均每步仅占10bit位的象棋历史记录保存方案(decode篇)
2023-12-31 20:45:18
解码历史记录
在上一篇文章中,我们介绍了如何使用JavaScript实现一种平均每步仅占10bit位的象棋历史记录保存方案(encode篇)。现在,让我们来看看如何对这些历史记录进行解码。
为了解码历史记录,我们需要知道每一步操作需要多少个二进制位。在上篇文章中,我们已经提到,每一步操作需要4+1+2=7至4+1+4+5=14个二进制位。
现在,我们来看一个具体的例子。假设我们有一步操作的历史记录为"1100011110111100101111000000110100110110110011111000111100010010100110000001111100011111100000101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000