使用汇编进行8051字符串比较

时间:2015-04-28 16:05:36

标签: string assembly compare 8051

我需要将从200H开始的8051的代码存储单元中保存的字符串与另外三个字符串进行比较,这些字符串也是从300H开始保存在代码存储单元中。

三个字符串将用逗号分隔以表示不同的单词,并且在单词流的末尾将使用句号来指示流的结束。

现在我设法保存要比较的字符串和其他三个字符串,如下所示:

enter image description here

如何逐个字符串地比较直到找到匹配的字符串?

2 个答案:

答案 0 :(得分:0)

嘿,您可以使用CJNE insttruction进行比较。首先将内容移动到Acc并与第一个字符串进行比较。如果它匹配,则遍历到"," :存储字符串的分隔符。 一个达到分隔符,初始化比较字符串指针。

希望得到这个帮助。

答案 1 :(得分:0)

第一步(也许不是最后一步)应该是计算字符串变量的长度。 在你给出的例子中,这就足够了。在一般情况下,这一步是一个减少搜索数组的变量过滤器。之后需要使用重合分析,首先是第一个字符,然后是第二个,依此类推。