实现一个旋转密码,它有时也被称作凯撒密码。
凯撒密码是一种简单的移位密码,它通过一个介于0和26之间的整数密钥,对字母表中的所有字母进行移位。由于模运算的关系,使用0或26作为密钥总是得到相同的输出。字母会按照密钥的值移动相应的位数。
旋转密码的通用记法是ROT + <key>。最常用的旋转密码是ROT13。
对拉丁字母表应用ROT13的效果如下:
Plain: abcdefghijklmnopqrstuvwxyz
Cipher: nopqrstuvwxyzabcdefghijklm
它比埃特巴什密码更强,因为它有 27 个可能的密钥,其中 25 个可用。
密文的书写格式与输入相同,包括空格和标点。
omg变成trl
c变成c
Cool变成Cool
The quick brown fox jumps over the lazy dog.变成Gur dhvpx oebja sbk whzcf bire gur ynml qbt.
Gur dhvpx oebja sbk whzcf bire gur ynml qbt.变成The quick brown fox jumps over the lazy dog.
| 寄存器 | 用途 | 类型 | 说明 |
|---|---|---|---|
$a0 |
输入 | 地址 | 以 null 结尾的输入字符串 |
$a1 |
输入 | 整数 | 移位量 |
$a2 |
输入/输出 | 地址 | 以 null 结尾的结果字符串 |
$t0-9 |
临时 | 任意 | 用于临时存储 |