我正在用MIPS汇编语言编写子程序,将ASCII转换为UTF-16,反之亦然。但是,我找不到任何技巧如何转换它。
感谢任何想法。
答案 0 :(得分:6)
伪代码,假设您的字节是八位字节,并且不需要零终止:
MOVZX
。您也可以注意正确的字节顺序。答案 1 :(得分:1)
只要你只拥有UCS2(只有16位代码点),你就可以通过short <-> char
- 转换直接转换为ASCII,只转换小于128的数字。
答案 2 :(得分:1)
术语ASCII不是非常具体。
ISO-646是Unicode UTF-16的子集。因此'7位'ASCII数字已经是 Unicode(即你只是将它们放到16位值的底部),而对于另一个方向,你所要做的就是取低如果这是你的意思,那么来自Unicode的8位来获取ASCII。
另一方面,如果您需要ISO-8859-1(Latin-1),则需要转换表。没有公式可以用汇编语言翻译成简单的指令。