我在BASIC中编写一个小型微控制器。基本上它收到了一些BASE64编码数据,我需要使用BASIC在我的最后解码它。我想知道是否有办法做到这一点?
答案 0 :(得分:0)
我不知道基本的,但你可以从这个链接开始:http://en.wikipedia.org/wiki/Base64,清楚地解释编码是如何工作的。
您需要解码base64编码的消息 设置像
这样的数组dim('A','B','C','D','E',....,'8','9','+','/')
(或基本语法是)与64索引和 从输入中读取4个字符。 在查找表中找到相应的值并使用 它解码消息。
我将使用术语 char 来表示 您在编码消息中找到的字符以及索引到的字词 解决它们为解码算法所代表的值。
如果您的基本支持位掩码可以非常快速地完成。 如果没有,你必须使用一些聪明的乘法/除法。
将第一个索引相乘并乘以4(模数255), 将第二个指数除以16, 添加两个结果以获取第一个字节
将第二个索引乘以16(模数255), 将第三个指数除以4, 添加两个结果以获取第二个字节
将第三个索引乘以16(模数255), 添加第四个索引以获取第三个字节
重复直到消息结束。
你需要注意填充字符:如果你遇到一个=符号,你知道你已经到了编码字节的末尾,你必须知道:
没有其他案例。
只是另一个提示:有时编码的消息被包装,你需要忽略\ n字符(或者你可以遇到的\ r \ n的wathever组合)。