在进行计算时,我们要面对的现实是位数有限。在第2章中,你了解到每个数据项都要占用固定数量的位,具体取决于其数据类型。本章将说明这一限制甚至会使最基本的数学运算复杂化。对于有符号数和无符号数,有限位数所带来的约束是我们在纸上或头脑中进行数学运算时通常不会考虑的。
幸运的是,在CPU的rflags寄存器的状态标志部分中,进位标志(Carry Flag,CF)和溢出标志(Overflow Flag,OF)允许我们检测二进制数相加和相减产生的结果是否超出了为该数据类型分配的位数。我们将在后续章节中进一步研究进位标志和溢出标志,但是目前,先来看看加法和减法是如何影响这些标志的。