我刚刚了解了幅度比较器电路。MC 会用三个比特来判断:
m < n
m = n
m > n
到目前为止,我还没有遇到一种可以提供这种操作的编程语言。我也不记得有一个汇编语句。如果电路仍然存在,是否有任何特定理由不向编程语言提供这样的功能?
编程语言中有类似的例子,例如strcmp()
andstrcoll()
和memcmp()
C 返回一个小于、等于或大于零的数字,这取决于它们的参数排序的顺序。
类似地,在 Perl 中,<=>
andcmp
运算符返回 -1、0 或 1,再次取决于哪个操作数较大(对于 是数字,对于<=>
是字符串比较cmp
)。
当然,这些都不会产生三个单独的位。(只有三个选项,无论如何两位就足够了。)数字返回值使得通过仅使用>= 0
. 大多数程序主要处理数字,语言和处理器使它变得容易,因此数字返回并非无效,单个位的输出可能看起来不合适。
(当然我们可以用返回值 4、2 和 1 定义这样一个比较函数,然后要求程序员使用符号常量或特殊测试函数将它们转换为人类可以理解的术语。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句