我是一名计算机科学专业的学生,我在这个问题上纠结了好几个小时。
我们有一个二进制无符号数 X,用 12 位表示。我们想构建一个具有 1 位输出的系统 - Y,如果 X 除以 15 而没有余数,则该系统将为“1”。
我们可以使用的唯一组件是:
- 4位加法器,还有C0(进位)作为输入,C4作为输出。
- 1 个带 3 个输入的单或非门。
我确实找到了一个模式。如果我为 0<=i<=11 计算 2^i % 15(因为它是 12 位),那么我将得到一个序列 1248 1248 1248。
如果我有 0001 1110 1111 那么我可以将所有数字相乘,将它们相加,然后检查我的数字是否可以被 15 整除。
0 + 0 + 0 + 8 + 1 + 2 + 4 + 0 + 1 + 2 + 4 + 8 = 30
问题是,我不知道如何实现它,以及它是否有效。
我很想得到一些帮助。