摩尔斯电码(英语:Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。是由美国人艾尔菲德·维尔与萨缪尔·摩尔斯在1836年发明。
点(·):1
划(-):111
字符内部停顿(在字符内的那些点和划之间):0
短停顿(在字符之间):000
中等停顿(在单词之间):0000000
-- --- ·-· ··· · / -·-· --- -·· ·
摩斯密码敲汉字的方法:1、摩斯密码仅仅做英文字符和数字,以及一些标点做了编码,中文并不在标准莫斯编码中的。2、国内的中文电码以中华人民共和国邮电部编写,人民邮电出版社出版的《标准电码本(修订本)》为规范,原理就是。
M O R S E (空格) C O D E
^ ^ ^ ^ ^
1.我们可以先记住数字,0至9的输入法,再记住二十六键字母图,记住每个字母的位置,其实二十六个字母,相当于汉字的拼音,第三用数字输入法输入,每个拼音的位置后就可以打出汉字了。
| 劃 点 | 单词间隔
点劃间隔 字符间隔
熟悉摩尔斯码的人之间经常像这样说话或拼写(其中,“长音 / Dah”是发“awe”的音):
-- --- ·-· ··· · / -·-· --- -·· ·
DahDah DahDahDah DiDahDit DiDiDit Dit,DahDiDahDit DahDahDah DahDiDi Di.
以上介绍均来自维基百科
下面我们用代码来实现这个转换的功能:
上面这一串符号就是使用摩尔斯电码打出来的英语单词,摩尔斯电码是由美国的画家、通讯学家、电报之父:塞缪尔·摩尔斯于1839年发明的电报信号传输方式。 塞缪尔·摩尔斯 摩尔斯发明摩尔斯电码的契机是在他的一次远航之中,。
新建一个map集合,将摩斯电码的规则添加进去(具体的参照上面的摩斯电码规则图),部分截图如下:
然后创建这个实例化对象,并对其进行初始化,方便验证输入无误:
加密方法如下:
解密方法如下:
这样我们就功能实现完毕,只需要调用即可。测试:
输入中文:我喜欢勒布朗.詹姆斯
转换失败,因为摩斯电码不支持中文。也是上面的初始化验证方法起效果。
怎样用摩斯密码来表达中文 1、使用GB2312-80标准的区位码进行编码。2、使用GB2312-80标准的国标码进行编码。3、使用汉字机内码的十六进制形式进行编码。注意:用以上三种办法,每个汉字都是先转为4个ASCII字符,再用它们的。
输入英文: I love lebron James
这个转换成功。
下面实现中文和二进制的互转功能,这个比较简单,直接展示代码部分了:
二进制转换成中文:
中文转换成二进制:
测试如下:
测试成功。
话说人得有多无聊才会研究这个啊,哈哈。