摩斯电码转换
文本与摩斯电码(.-)互相转换,支持中文
摩斯电码的编码规则与时序标准
它不是定长编码
摩斯电码用两种信号(短点与长划)表示字符,但每个字符占用的信号数不同。字母 E 是单个点,T 是单个划;而数字统一 5 个信号,标点通常是 6 个。
这种设计的思路和霍夫曼编码一样:英文中出现频率越高的字母,编码越短。E、T、A、I、N 都是 1-2 个信号,而 Q、Y、Z 都是 4 个。这让整段报文的平均长度最短。
时序规范(ITU-R M.1677)
摩斯电码的关键在于时长比例,而不是绝对速度。以"一个点"的时长为 1 单位:
| 元素 | 时长(单位) |
|---|---|
| 点 | 1 |
| 划 | 3 |
| 同一字符内信号间隔 | 1 |
| 字符之间间隔 | 3 |
| 单词之间间隔 | 7 |
所以 ...---... 是 SOS,中间不加空格;而 ... --- ... 是两个单词边界的写法。收报方就是靠间隔长度区分字符与词——间隔错了,同一串信号能被解读成完全不同的内容。
为什么会出现歧义
去掉字符间空格之后,一段点划序列的解读不是唯一的。举例:.... 可以是 H(四个点),也可以是 EEEE、IE、SI 等等,取决于在哪里切分。真实电报靠严格的时序(或分隔符)来消除这种歧义。
这也是纯文本转换时要注意的地方:编码必须输出分隔符,否则解码无法保证还原。有的工具用空格分隔字符、用 / 分隔单词;有的用单个空格分隔字符、三个空格分隔单词。互操作前先确认约定。
今天还在哪里用到
- 业余无线电。呼号识别、弱信号通信(QRP)仍以摩斯为最有效的模式之一,因为窄带意味着在同等功率下传得更远。
- 航空导航。VOR 与 NDB 台站用摩斯电码持续广播自己的三字母标识,飞行员据此确认收到了正确台站——这是防止调错频率的简单而有效的机制。
- 光信号与应急。SOS(
...---...)作为国际遇险信号被写入公约,因为它不依赖任何设备,手电筒、镜面、哨子都能发送。 - 短信时代的怀旧与娱乐。以及作为学习变长编码思想的直观例子。
工具支持文本与摩斯电码互转,可选字符间分隔符(空格或 /),对大小写不敏感,全部在浏览器本地完成。
常见问题
支持中文吗?
摩斯电码本身只定义英文字母、数字和常用符号,中文无法直接转换,会跳过。