定点运算:
一、移位运算:
左移 绝对值扩大
右移 绝对值缩小
2.算术移位
符号位不变:
正数:填补代码0
负数:原码:0
反码:左移添0 右移添1
补码:填补代码1
例子:负数:左移,右移
3.算术移位硬件实现:
正数:
最高位扔掉,最低位补0,符号位不变
4.算术移位和逻辑移位的区别:
算术移位:有符号的移位
逻辑移位:无符号的移位 算术移位会保留符号位
二、加减法运算:
补码加减法运算公式:
(1)加法
整数:[A]+[B]=[A+B](mod2^n+1)
小数:[A]+[B]=[A+B]补(mod2)
(2)减法:
整数:[A]+[B]=[A+B]=[A]+[-B]补(mod2^n+1)
小数:[A]+[B]=[A+B]=[A]+[-B]补(mod2)
连同符号位一起相加,符号位产生的进位自然丢掉。
例子:设A=0.1011 B=-0.0101 求[A+B]补 (0.0110)
例子:A=15 B=24 用补码求A-B (-1001)
B的补码:0,0011000
-B的补码:1,1101000
3.溢出判断:
(1)一位符号位溢出
参与操作的两个数符号相同,其结果的符号与原操作数的符号不同即为溢出。
硬件实现:
最高位有效进位结果 异或 符号位进位结果 = 1 (发生了溢出)
(2)2个符号位判断溢出
三、乘法运算:
运算器:X(被乘数) ACC(乘积高位) MQ(乘数、乘积低位)
符号位单独处理:异或
乘法运算
最新推荐文章于 2023-04-05 17:51:25 发布