小数点的处理: 1、运算中,采用补码来表示定点数。 2、定点数的移位运算 例:设机器字长为8,A=+26 当机器数为正,三码相等,左移右移都补0 。 例:设机器字长为8,A=-26 原码——左移右移补0。 补码——左移补0,右移添1。 反码——左移右移都添1。 例:[x]原=0.1101,[y]原=1.1001,求[x+y]原、[x-y]原? 例:x=+0.1011,y=-0.1001,求[x+y]补? 例:已知[x]补=0.0010,[y]补=1.1010,求[x-y]补? ②双符号法(变形补码法)——检测正负溢出 原则: 正溢出 负溢出: ③当两个单符号: 例:已知[x]补=1.0101,[y]补=1.1001,求[x+y]补=?
任意一个二进制数S都可以表示为
研究小数点就要研究阶码E的取值:
例0.1111表示+0.1111,1.1111表示-0.1111。
例01111表示+1111,11111表示-1111。定点数的运算:
补码表示定点整数时,和原码、反码相比的优点
符号位可以跟数值位一起参加运算
可以用加法方便的实现减法运算
0的表示是唯一的
可以多表示一个最小负数
当某二进制数相当于小数点做n位左移或者右移,相当于该数乘以或者除以2^n。
由于机器数的字长都是固定的,当机器数左移或者右移时,都会造成n位低位或者n位高位出现空缺。逻辑移位(无符号数)
逻辑移位的规则
左移
高位移丢,低位补0
右移
低位移丢,高位添0
算术移位
A=+26=+11010
[A]原=[A]补=[A]反=0,0011010
移位操作
机器数
真值
移位前
0,0011010
+26
左移一位
0,0110100
+52
左移两位
0,1101000
+104
右移一位
0,0001101
+13
右移两位
0,0000110
+6
[A]原=1,0011010
[A]补=1,1100110
[A]反=1,1100101
移码操作
机器数
真值
移位前
1,0011010
-26
左移一位
1,0110100
-52
右移一位
1,0001101
-13
移码操作
机器数
真值
移位前
1,1100110
-26
左移一位
1,1001100
-52
右移一位
1,1110011
-13
移码操作
机器数
真值
移位前
1,1100101
-26
左移一位
1,1001011
-52
右移一位
1,1110010
-13
定点数的加/减运算
1、原码
[x+y]原:
符号位不同,做减法:
[-y]原=0.0111
最高数值位产生进位,所在数值位 .0100,再加上第一操作数的符号0
[x-y]原:
减数的符号取反,
因为数值最高位产生进位,结果正上溢。2、补码
两个数的补码相加,符号位参加运算,且两数和的补码等于两数的补码之和。
[x]补=0.1011 [y]补=1.0111
则:[x+y]补=0.1011+1.0111=0.0010(符号位进位舍去)
即:[x+y]补=0.0010,真值为:+0.0010。
由于运算器仅有加法器,则:
[y]补=1.1010,则[-y]补=0.0110
则[x-y]补=0.0010+0.0110=0.1000。3、特殊的情况——溢出(补码)
码制
范围
原码
-127~127
补码
-128~127
反码
-127~127
①单符号——两符号相同的运算,运算结果符号相反的为溢出。
发生溢出的情况
加法:符号相同的两数相加
减法:符号不同的两数相减
特点:
例:已知[x]补=00.1011,[y]补=00.0111,求[x+y]补=?
例:已知[x]补=11.0101,[y]补=11.1001,求[x+y]补=?
当两个单符号位补码进行加减运算时,若最高数值号位向符号位的进位值C与符号位产生的进位输出值S相同,则没有溢出发生;如果两个进位值不同,则发生溢出。
判断公式:C⊕S
例:已知[x]补=1.1000,[y]补=1.1000,求[x+y]补=?
《计算机组成原理》——唐朔飞此次就到这里,欢迎大家指导指正~ 我是爱吃肉的小白yyyloki,如果你觉得不错的话点个赞👍吧!或者你可以关注,持续更新计组的内容(ps:也许期末用的上)。我们下次见~886
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算