2019-计算机组织与结构-lecture05
Decimal Representation
1. 加法的问题(W8421)
- 4位表示的是16进制的数字
- 为什么会加6就正常了呢?
- 因为当满10时需要加6来进行进位
- 红色的1代表16,但是我们按照10来进行的进位。
- 只可能出现一次加6,因为最大的是9+9是18,而不会是26,所以最多加1次
2. 实现加六的电路
- C4线上为1,则加6
- 如何判断存在16进行进位:C4*
- 如何判断这个电路能达到10及以上的但是不到16的。
- 判断:最高位为1,第二位、第三位至少有一位不为0即为大于等于10的数字。
3. 实现减法
- 借位是需要解决的。
- 以67-34为例:
- 67-34 = 67 + (100-34) - 100
- 100 - 34 = 99 -34 + 1
- 接下来解决 9 - 3 && 9 - 4
- 这个部分就是invert后的数字。
- 1001 - 0011 = 1111 - (0011 + 0110) 也可以先取反再加1
- 忽略掉进位即可,因为已经完成了进位操作。
- 还不上怎么办:取反加一再加上一个负号
- 如果还不上:我们依旧需要还上:x-10n = x - 99…9 - 1 = -(99…9 - X + 1)
2019-计算机组织与结构-lecture05
https://spricoder.github.io/2020/01/16/2019-COA19/2019-COA19-lecture05/