考研408总结【计组】---数据的表示和运算(中)

632 阅读2分钟

这是我参与11月更文挑战的第10天,活动详情查看:2021最后一次更文挑战

考研倒计时:45天

参考资料: 王道计算机组成考研

上篇总结了数值与编码以及ALU的内容

本篇总结定点数的运算

下篇总结浮点数的运算。

定点数的运算

image.png

根据小数点的位置是否固定,在计算机中有两种数据格式:定点表示和浮点表示。

定点表示即约定机器数中的小数点是固定不变的。分为定点小数和定点整数。

有符号数的机器表示有原码、补码、反码和移码。

  • 真值零的原码有两种形式,正零和负零。同理反码也不唯一。
  • 真值零的补码是唯一的,0.0000;负1的补码为1.0000
  • 移码常表示浮点数的阶码,只能表示整数。零的表示唯一:10000(n个0);移码保持了数据的原有的大小顺序,移码大真值就大,移码小真值就小。

图片来源mooc,根据图表理解记忆原反补移的范围大小。 在这里插入图片描述

定点数的移位运算

image.png

  • 注意算术移位的对象是有符号数。

原码定点数的加减法运算

加法:符号位相同,绝对值相加,结果符号位不变;若不同则做减法,绝对值大的减去绝对值小的,符号位与绝对值大的相同。

减法:首先将减数的符号取反,然后将被减数和符号取反后的减数按原码加法进行运算。

补码定点数的加减法运算

计算机系统普遍采用补码加减运算。

[A+B]=[A]+[B][A+B]_补 = [A]_补 + [B]_补

[AB]=[A]+[B][A-B]_补 = [A]_补 + [-B]_补

定点数的乘法运算

乘法类型符号位参与运算部分积符号位乘数符号位累加次数移位
原码一位乘法2位0位n向右 n次 每次一位
补码一位乘法2位1位n+1向右 n次 每次一位

定点数的除法运算

乘法类型符号位参与运算加减次数移位说明
原码加减交替法N+1或N+2向左 n次最终余数为负,需恢复余数
补码加减交替法N+1向左 n次商末位横置1

部分内容待补充完善~

如有误,请多指正!