incrementNumber(char[] number) { //循环体退出标识 boolean isBreak = false; //进位标识 int carryFlag (int i = l - 1; i >= 0; i--) { //取第i位的数字转化位int int nSum = number[i] - '0' + carryFlag else { //进位之后减10,并把进位标识设置为1 nSum -= 10; carryFlag
incrementNumber(char[] number) { //循环体退出标识 boolean isBreak = false; //进位标识 int carryFlag (int i = l - 1; i >= 0; i--) { //取第i位的数字转化位int int nSum = number[i] - '0' + carryFlag else { //进位之后减10,并把进位标识设置为1 nSum -= 10; carryFlag
实际发生:CPU会把多出来的第65位存到一个特殊的进位标志(CarryFlag)中而寄存器里的计算结果变成0反过来也一样:0-1会变成最大值(绕回,类似钟表)现代硬件的扩展能力开头还提到一个有趣的进阶事实