Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我遇到了这个问题,但在教科书或互联网上都找不到。看起来很独特。
我想会涉及一些比较器和加法器,但我不知道从哪里开始。
第一步无疑是对这两个位集进行异或运算。然后你需要计算输出中逻辑的数量。设计电路的最佳方法是对这个问题中讨论的黑客进行完整的类比,并在nneonneo的回答中完美解释。这将产生最佳的加法器树,而不是依赖于顺序计数。这个想法是,在每一层中,您都知道如何限制输入子集的最大可能总和,以及它将适合多少位,从而消除了对进位位的需要。编程方法是为 32 位设计的,但很容易修改为更少或更多。
有关计算汉明权重的更多可能算法,请参阅此链接。