深入理解计算机操作系统(2.3.3)

来源:互联网 发布:网络与新媒体是干嘛的 编辑:程序博客网 时间:2024/05/19 04:52

补码的非

这里写图片描述
解释:这里的非并不是C语言中的~,而是表示该数的加法逆元。
加法逆元:对于一个数x,总有一个数y,使得x+y=0,那么y就是x的加法逆元,相反x也是y的加法逆元。

对于TMin(w),它的加法逆元就是它本身,因为TMin(w)+TMin(w) = -2^(w-)+(-2^(w-1))= -2^w,-2^w产生了负溢出,截断就是就是0。

计算加法逆元:

  1. 对于w位数x,它的加法逆元等于~x+1。举例:8位补码数-128的加法逆元为~128+1 = 127 + 1 = 128,8位二进制数无法表示128,截断之后的数就是0。
  2. 对于w位数x,写出它的二进制表示,从低位向高位数,找到第一不为0的数k,那么k左边的高位数做取反运算,得到x的加法逆元。举例,5的二进制为00000101,从左向右找到第一个不为0的数,就是最低位的1,那么最低位1左边所有的数做取反得到结果为11111011结果为-5。

无符号数乘法

原理:
这里写图片描述

原理解释:就是将超出w位的部分截断 。

补码乘法

原理:
这里写图片描述

原理解释:将超出的部分截断,再用补码的方式解释二进制数。

原创粉丝点击