发布于 2012-12-10 18:57:09
26楼
1、假定楼主把模拟量处理好了,接下来就是三个数来选大值的事。
2、比如A、B、C已经是三个纯数了,不妨认为是16位字长的整数。构建这么一个32位字长的数据结构,比如A:b31-b16为A整数部分,b15-b8为权值,b7-b0为变量序号,对A是0、B是1、C是2。权值,曾经是最大值的,权值最大,三个数的话,最大权值是2,其次是1,最小权值是0。
3、对A、B、C三个32位字长的数构建完后,对这个序列进行排序(全排),最大值冒上来。
4、冒上来的那个变量序号的指示灯点亮。
5、生成新的权值,序列排最前面的权值最大,依次减小。
6、首次比较,权值均为0。初值相等时,谁为大?这个就不必计较了,最大的帽子只一个,给谁戴都有失公平的。如果你要照顾其中一个优先,把它的权值初始化为最大就是。