我有一个关于可见光通信的项目。我需要获得用户输入(例如句子)并将此句子转换为二进制值,以便我可以打开LED的开关。
到目前为止,我设法传输数据,但我遇到了如何将此字符串转换为二进制文件的问题。
我提出的一个想法是将此字符串转换为1D和0的1D数组。数组中的每个8二进制元素代表ascii equvialant。但是我无法完成这项任务。
如果你们给我另一种方法来完成这项工作,那么它会受到极大的关注。
我确定有更好的方法可以做到这一点,但到目前为止我找不到它。
答案 0 :(得分:0)
如果文本只是A-Z和a-z,即没有任何特殊字符,如空格,句号,逗号,$&()@等,那么你可以使用自己的编码对它们进行编码,例如: A = 0 B = 1 .... a = 26 ... z = 51.这样做,你需要6位代表每个字符。
另一方面,您可以使用更高级的算法(如Huffman coding)对每个字符进行编码。
但是,如果您在传输ASCII表示时遇到问题,那么这两个选项就会出现问题。我会说坚持使用ASCII编码,直到你有更强的理由尝试别的东西。