二进制树形搜索算法(如下图所示)的基本思想是将处于冲突的标签分成左右两个子集0和1,先查询子集0,如果没有冲突,则正确识别标签,若仍有冲突则再分裂,把子集0分成00和01两个子集,以此类推,直到识别出子集0中的所有标签,再按此步骤查询子集1。
实现步骤如下:
1.读写器广播发送最大序列号查询条件Q,其作用范围内的标签在同一时刻传输它们的序列号至读写器。
2.读写器对收到的标签进行响应,如果出现不一致的现象(即有的序列号该位为0,而有的序列号该位为1),则可判断出有碰撞。
3.确定有碰撞后,把有不一致位的数最高位置0再输出查询条件Q,依次排除序列号大于Q的标签。
4.识别出序列号最小的标签后,对其进行数据操作,然后使其进入“无声”状态,则对读写器发送的查询命令不进行响应。
5.重复步骤1,选出序列号倒数第二的标签。
6.多次循环完后完成所有标签的识别。