pax*_*blo 15 c signed twos-complement ones-complement
ISO C标准允许三种编码方法用于有符号整数:二进制补码,一个补码和符号/幅度.
在运行时检测编码的有效或好方法是什么(或者如果有更好的解决方案,还有其他时间)?我想知道这一点,所以我可以针对不同的可能性优化bignum库.
我计划计算这个,并在每次程序运行时将其存储在一个变量中,所以它不必非常快 - 我假设在程序运行期间编码不会改变:-)
Jer*_*fin 12
检测一个补码应该非常简单 - 就像if (-x == ~x).检测两个补码应该很简单:if (-x == ~x + 1).如果它不是那些,那么它必须是符号/幅度.
| 归档时间: |
|
| 查看次数: |
569 次 |
| 最近记录: |