pax*_*blo 41 c iso representation negative-number language-lawyer
我们毫无疑问地知道,ISO C标准(以及C++,我认为,虽然我对C方面更感兴趣)允许签名数字的三个基础表示:
维基百科的条目表明,60年代的IBM 7090使用了标志/幅度,PDP-1,CDC 160A和UNIVAC 1100使用的是补充,所有这些都可以追溯到60年代.
是否有其他任何具有这些替代表示的C(或底层硬件)实现,这些实现比五十年前更新了(它们是什么)?
对于不再存在的机器,保持某种标准似乎有点浪费.
Mik*_*our 33
我能找到的最新例子是基于UNIVAC 的UNISYS 2200系列,带有补码运算.各种型号是在1986年至1997年间生产的,但操作系统仍在积极开发,直到2015年.他们也有一个C编译器,因为看到这里.
它们似乎可能仍然在今天使用.
我没有任何确凿的证据证明没有,但我从未见过.据我所知,所有非二进制补码硬件在C标准化之前就已经过时了.
收集证据的最佳方法可能是在与非二元补充系统相关的标准中寻找相互冲突的要求和其他彻底的错误.如果从未创建过这样的实现,那么当某人实际尝试制作一个实体时,规范中可能会出现疏忽.