我并没有将其委托给任何人,只是想为我正在研究的消息协议实现解析器提供一些想法/帮助。我有一条消息是通过串行com端口发送的,因此基本上只是一个简单的字节集合。
+--------------------------------------------------------------+
| MSG HEADER (5 Bytes) | ----- DATA BYTES (varied count) ----- |
+--------------------------------------------------------------+
此消息的标头具有固定的开头五个字节,表示:
字节1:固定的标头符号0x81
字节2:固定的标题符号0xFF
字节3:数据字数
字节4:消息ID
字节5:标头校验和
然后在此之后,我们收到数据字节。问题是数据字节的计数可以变化,但是这些字节的计数在消息的 header 中是第三个字节。如何编写高效的解析器,该解析器应能够: