[计算机组成原理]—6.计算机的运算方法(详细)
文章目录思维导图:课程进度:一、无符号数和有符号数1.无符号数2.有符号数二、数的定点表示和浮点表示1.定点表示2.浮点表示3.定点数和浮点数比较4.举例5.IEEE 754标准三、定点运算1.移位运算2.加法与减法运算3.乘法运算4.除法运算四、浮点四则运算1. 对阶(小介看大介)2.尾数求和3. 规格化4. 舍入5. 溢出判断五、算术逻辑单元1.ALU电路2.快速进位链思维导图:课程进度...
文章目录
欢迎到我个人博客查看本篇 https://sunmengxin.cn/CSCC/06-operational-method/
思维导图:
课程进度:
一、无符号数和有符号数
1.无符号数
寄存器位数反映无符号数的表示范围:
8位——0~255
16位——0~65535
2.有符号数
机器数与真值
原码表示法
- 整数
- 小数
- 原码简单直观
补码表示法
-
(1) 补的概念
- 补码的提出:解决原码的加减符号不同意问题(用加法代替减法)
- 时钟:6点 -3 可用 + 9 代替-都变成3点,称 + 9 是 3 以 12 为模的补数(mod 12)
- 结论:
一个负数加上 “模” 即得该负数的补数
一个正数和一个负数互为补数时它们绝对值之和即为模数
-
(2) 正数的补数即为其本身
-
(3) 补码定义
-
(4) 求补码的快捷方式
当真值为负时,补码 可用 原码除符号位外每位取反,末位加 1 求得
反码表示法
-
除符号位每位取反
-
比较
移码表示法
-
定义
-
移码和补码的比较:补码与移码只差一个符号位
-
真值、补码和移码的对照
-
移码的特点
最小真值的移码为全 0
用移码表示浮点数的阶码能方便地判断浮点数的阶码大小
二、数的定点表示和浮点表示
1.定点表示
小数点固定在某一位置为定点数
在定点机中,小数位置固定,当处理数不是纯小数或纯整数时,必须乘上一个比例因子,否则会“溢出”
2.浮点表示
起因
- 编程困难,程序员要调节小数点的位置
- 数的表示范围小,为了能表示两个大小相差很大的数据,需要很长的机器字长;
- 数据存储单元的利用率往往很低
浮点
S:小数,可正可负
j:整数,可正可负
浮点形式
范围
浮点数规格化
1.基数不同,浮点数规格化形式不同:
r = 2 尾数最高位为 1
r = 4 尾数最高 2 位不全为 0
r = 8 尾数最高 3 位不全为 02.基数 r 越大,可表示的浮点数的范围越大,浮点数的精度降低:
r = 2 左规 尾数左移 1 位,阶码减 1
右规 尾数右移 1 位,阶码加 1
r = 4 左规 尾数左移 2 位,阶码减 1
右规 尾数右移 2 位,阶码加 1
r = 8 左规 尾数左移 3 位,阶码减 1
右规 尾数右移 3 位,阶码加 1
机器零
- 当浮点数尾数为 0 时,不论其阶码为何值按机器零处理
- 当浮点数阶码等于或小于它所表示的最小数时,不论尾数为何值,按机器零处理
3.定点数和浮点数比较
4.举例
5.IEEE 754标准
标准
举例
三、定点运算
1.移位运算
移位的意义
15.m = 1500. cm
小数点右移 2 位
机器用语 15 相对于小数点 左移 2 位
算术移位
-
规则
-
举例
算术移位的硬件实现
算术移位和逻辑移位的区别
- 算术移位:有符号数的移位
- 逻辑左移:低位添 0,高位移丢
- 逻辑右移:高位添 0,低位移丢
- 逻辑移位:无符号数的移位
2.加法与减法运算
补码加减法运算的公式
-
加法
-
减法
举例
溢出的判断
-
一位符号位判溢出
参加操作的两个数(减法时即为被减数和“求补”以后的减数)符号相同,其结果的符号与原操作数的符号不同,即为溢出
-
两位符号位判溢出
结果的双符号位 相同 未溢出
结果的双符号位 不同 溢出
最高符号位代表其真正的符号
补码加减法的硬件配置
3.乘法运算
分析笔算乘法
笔算乘法改进
改进后的笔算乘法过程(竖式)
小结
- 乘法运算可用加和移位实现n = 4, 加 4 次,移 4 次
- 由乘数的末位决定被乘数是否与原部分积相加,然后 1 位形成新的部分积,同时 乘数 1 位(末位移丢),空出高位存放部分积的低位。
- 被乘数只与部分积的高位相加
- 硬件:3 个寄存器,其中2个具有移位功能;1 个全加器
原码一位乘
-
举例
-
硬件
补码一位乘
Booth算法
-
递推公式
-
举例
-
硬件
4.除法运算
分析笔算除法
笔算除法和机器除法的比较
原码除法
-
(1) 恢复余数法
-
(2) 不恢复余数法(加减交替法)
-
(3) 原码加减交替除法硬件配置
四、浮点四则运算
1. 对阶(小介看大介)
2.尾数求和
3. 规格化
左规
右规
4. 舍入
在 对阶 和 右规 过程中,可能出现尾数末位丢失引起误差,需考虑舍入
- 0 舍 1 入法
- 恒置 “1” 法
5. 溢出判断
五、算术逻辑单元
1.ALU电路
2.快速进位链
- 1.串行进位链
- 2.并行进位链(先行进位,跳跃进位)
注:本篇除思维导图,其它图片均来自PPT课件和唐朔飞的《计算机组成原理》
👇您的赏识是我前进的动力!٩(๑•̀ω•́๑)۶😜
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)