比较多个字节

时间:2012-09-26 07:52:10

标签: assembly microchip

我从USART接收字节并将它们放入内存寄存器。字节是我必须阅读的命令,并相应地回复消息。我知道如何比较单个字节,建议我使用算法来比较多个字节。

例如,接收的字节在十六进制16 04 32 01 00中看起来像这样。它们的长度不同,因此比较会更困难。

1 个答案:

答案 0 :(得分:1)

您只需要比较足够的字节以清楚地识别它是什么类型的消息(在第一步中您不需要关心的实际数据有效负载)。对于大多数串行协议,它只是指定位置的单个字节。

通过查看您的示例消息,我猜测第一个字节是消息类型,第二个字节是数据有效负载的长度。如果是这种情况,那么您不需要检查多于第一个字节并相应地跳转。这主要通过使用消息类型(第一个字节)索引的跳转表来完成。

处理实际消息数据有效负载的函数可以执行任何想要对数据执行的操作,但是您不需要检查完整消息,只是为了找出如何处理消息。