莫尔斯码(英语:Morse code)是以不同的排序顺序表示不同的字母、数字和标点符号的分时信号代码。
是由美国人艾尔菲德·维尔与萨缪尔·摩尔斯在1836年发明。摩尔斯电码是一种早期的数字化通信形式,但是它不同于现代只使用0和1两种状态的二进制代码,它的代码包括五种:
点(·):1
划(-):111
字符内部停顿(在字符内的那些点和划之间):0
短停顿(在字符之间):000
中等停顿(在单词之间):0000000
有两种“符号”用来表示字符:点(·)和划(-),或叫“滴”(Dit)和“答”(Dah)。点的长度决定了发报的速度,并且被当作发报时间参考。下面是时间控制的图示:
-- --- ·-· ··· · / -·-· --- -·· ·
M O R S E (空格) C O D E
这里,“-”表示划,“·”表示点。这是上面消息的准确发报时间(=表示有信号,.代表无信号,每个为一个点的长度):
===.===...===.===.===...=.===.=...=.=.=...=.......===.=.===.=...===.===.===...===.=.=...=
^ ^ ^ ^ ^
| 劃 点 | 单词间隔
点劃间隔 字符间隔
划一般是三个点的长度;点划之间的间隔是一个点的长度;字符之间的间隔是三个点的长度;单词之间的间隔是七个点的长度。
初学者往往被教导发送点划间隔短小、短而快的字符,并且在符号和单词之间夸大间隔时间。比较起来,这种方式更加容易学会。
熟悉摩尔斯码的人之间经常像这样说话或拼写(其中,“长音 / Dah”是发“awe”的音):
-- --- ·-· ··· · / -·-· --- -·· ·
DahDah DahDahDah DiDahDit DiDiDit Dit, DahDiDahDit DahDahDah DahDiDi Di.
以上介绍均来自维基百科
下面我们用代码来实现这个转换的功能:
新建一个map集合,将摩斯电码的规则添加进去(具体的参照上面的摩斯电码规则图),部分截图如下:
然后创建这个实例化对象,并对其进行初始化,方便验证输入无误:
加密方法如下:
解密方法如下:
这样我们就功能实现完毕,只需要调用即可。测试:
输入中文:我喜欢勒布朗.詹姆斯
转换失败,因为摩斯电码不支持中文。也是上面的初始化验证方法起效果。
输入英文: I love lebron James
这个转换成功。
下面实现中文和二进制的互转功能,这个比较简单,直接展示代码部分了:
二进制转换成中文:
中文转换成二进制:
测试如下:
测试成功。
话说人得有多无聊才会研究这个啊,哈哈。
1.《文字怎么转二进制?我来告诉你答案关于中文转换成摩斯电码,二进制的代码实现步骤》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《文字怎么转二进制?我来告诉你答案关于中文转换成摩斯电码,二进制的代码实现步骤》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/3140057.html