我想知道,限制为64位的机器如何处理复杂的数学和计算,其数字大于它能够“想象”的数字?例如,8位系统如何添加大于255的数字?为什么不导致溢出?
我主要谈论基于Windows的系统,而不是任何特定的编程语言,我知道一些编程语言如Python可以处理有符号和无符号整数的无限数字而没有问题。
谢谢。
- 主芯片
答案 0 :(得分:0)
在软件中“简单地”模拟。由于人类可以处理超出其手指的数字,因此软件可以使用更多字节来存储更多位,并在右侧传播MSB上的位。 假设您使用8位μP中的16位:
你拿LSB并添加它们。如果随身携带它。 添加MSB,最后添加进位。
附录A可以写成:81 *(MSBa)+ 80 *(LSBa) 对于B. 在软件中“简单地”模仿。由于人类可以处理超出其手指的数字,因此软件可以使用更多字节来存储更多位,并在右侧传播MSB上的位。 假设您使用8位μP中的16位:
你拿LSB并添加它们。如果随身携带它。 添加MSB,最后添加进位。
附录A可以写成: 81 *(MSBa)+ 80 *(LSBa) 对于B来说是一样的: 81 *(MSBb)+ 80 *(LSBb)
所以A + B是: 81 *(MSBa)+ 80 *(LSBa)+ 81 *(MSBb)+ 80 *(LSBb)=
81 *(MSBa + MSBb)+ 80 *(LSB a + LSBb)