变量名 | 类 型 | 静态 | 数组 | 备 注 |
局_数据 | 字节集 | | |
局_余数 | 整数型 | | |
局_临时 | 字节型 | | 3 |
局_变量 | 整数型 | | |
局_集合 | 字节集 | | |
局_长度 | 整数型 | | |
局_字符 | 字节集 | | |
i | 整数型 | | |
局_数据 = 待编码数据
局_长度 =
取字节集长度 (局_数据
)如果真 (局_长度 < 1
)返回 (“”)局_余数 = 局_长度 % 3如果真 (局_余数 > 0
)局_数据 = 局_数据 +
取空白字节集 (3 - 局_余数
)局_长度 = 取字节集长度 (局_数据)局_字符 =
取空白字节集 (局_长度 × 4 ÷ 3
)i = 1
局_集合 =
到字节集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”)变量循环首 (1, 局_长度, 3, 局_变量
)局_临时
[1
] = 局_数据
[局_变量
]局_临时
[2
] = 局_数据
[局_变量 + 1
]局_临时
[3
] = 局_数据
[局_变量 + 2
]局_字符
[i
] = 局_集合
[右移 (局_临时
[1
], 2
) + 1
]局_字符
[i + 1
] = 局_集合
[左移 (位与 (局_临时
[1
], 3
), 4
) +
右移 (局_临时
[2
], 4
) + 1
]局_字符
[i + 2
] = 局_集合
[左移 (位与 (局_临时
[2
], 15
), 2
) +
右移 (局_临时
[3
], 6
) + 1
]局_字符
[i + 3
] = 局_集合
[位与 (局_临时
[3
], 63
) + 1
]i = i + 4
变量循环尾 ()如果真 (局_余数 > 0
)局_长度 =
取字节集长度 (局_字符
)如果 (局_余数 = 1
)局_字符
[局_长度 - 1
] =
到字节 (取代码 (“=”,
))
局_字符
[局_长度
] =
到字节 (取代码 (“=”,
))
局_字符
[局_长度
] =
到字节 (取代码 (“=”,
))
返回 (到文本 (局_字符))