数据检索指令的助记符、指令代码、操作数及程序步如表 6-59 所列。
表 6-59 数据检索指令

指令梯形图如图 6-101 所示。
图 6-101 数据检索指令梯形图

指令说明:
① 该指令的功能是从以源操作数 [S1] 为首的 n 个数据中检索符合 [S2] 的数据,检索结果存于以 [D] 为首的 5 个数据寄存器中。
② 该指令的检索结果是:检索表中与 [S2] 相等的值的个数、检索表中第一个与 [S2] 相等的数、检索表中最后一个与 [S2] 相等的数、检索表中最小的一个数、检索表中最大的一个数。
表 6-60 检索列表

③ 待查的源操作和检索的结果如表 6-61 所列。
表 6-61 检索结果

例 6-21 用数据检索指令编一个程序完成如下功能:有 10 个评委打分,所打分数分别存在 D1~D10 中,求去掉一个最高分和一个最低分后的平均分。分析:先利用变址累加的方法求 D1~D10 的和,然后用 SER 指令找出表中最大数和最小数的地址,再利用变址从总和中减掉最大值和最小值,所得结果除以 8 即最后的平均分。控制程序梯形图如图 6-102 所示。
图 6-102 控制程序梯形图
