补码加减法运算(计算机组成原理)页

合集下载

2补码加减法运算详解

2补码加减法运算详解
[y]补=1.1011
[x]补 +[ y ] 补 0. 1 0 1 1 1. 1 0 1 1
解:
[x]补=0.1011,
[ x +y ] 补
计算机组成原理
1 0. 0 1 1 0
所以
x+y=0.0110
4
3.补码减法
补码减法运算的公式: [ x -y ] 补=[ x ] 补-[ y ] 补=[ x ] 补+[ -y ] 补
V =C f ⊕C o
其中Cf为符号位产生的进位,Co为最高有效位产生的进位。 此逻辑表达式也可用异或门实现。 V=C1⊕Co 判断电路
c0 x0 y0 c1 x1 y1
FA
z0
V
FA
z1
11
计算机组成原理
(3)双符号位法 一个符号位只能表示正、负两种情况,当产生溢出时,符号位的含义就 会发生混乱。如果将符号位扩充为两位(Sf1、Sf2),其所能表示的信息量将 随之扩大,既能判别是否溢出,又能指出结果的符号。 双符号位法也称为“变形补码”或“模4补码” 。 定点小数变形补码定义: 0 x<1 -1 x<0 0 x<2 n -2 x<0 n (mod 2
机器定点小数表示 发生溢出的原因,是因为运算结果超出编码所能表示的数字大小。 两个正数相加: 结果大于机器所能表示的最大正数,称为上溢; 两个负数相加:结果小于机器所能表示的最小负数,称为下溢。
计算机组成原理 7
例:x=+0.1011, y=+0.1001,
解: [x]补=0.1011 [x]补 + [y]补 [x+y]补
两数差的补码等于两数补码之差
公式证明: 只要证明[–y]补= –[y]补, 上式即得证。 证明:

计算机组成原理复习资料

计算机组成原理复习资料
作业9 :画出并行补码定点加减运算器框图(设机 器数采用2位符号位),并描述其信息加工过程。 【解】机器数采用2位符号位的并行补码定点加减 运算器框图如下页图所示 。 并行补码定点加减运信息加工过程可描述为: GA· (A加X)+ GS· (A加X加1)→A 溢出判断过程可描述为:A0⊕A1→V
V
4、主存储器的性能指标有哪些?含义是什么? 答:存储器的性能指标主要是存储容量. 存取时间、 存储周期和存储器带宽。2分 在一个存储器中可以容纳的存储单元总数通常称为该 存储器的存储容量。1分 存取时间又称存储访问时间,是指从启动一次存储器 操作到完成该操作所经历的时间。1分 存储周期是指连续两次独立的存储器操作(如连续两 次读操作)所需间隔的最小时间。1分 存储器带宽是指存储器在单位时间内的数据传输速率。 1分
6、在定点二进制运算器中,减法运算一般通过什 么电路来实现?如何实现? 答:通过补码二进制加法器实现。 2分 用被减数加上减数的机器负数实现。1分 7、浮点数采用什么机器数形式时,可用全0表示 机器0? 答:阶码用移码表示,尾数用补码表示即可。 8、浮点数的阶码和尾数哪个决定其表示范围?哪 个符号决定其符号? 答:阶码决定浮点数的表示范围;1.5分 尾数的符号决定浮点数的符号。1.5分
3、主存中的ROM起什么作用?如果开机执行程序在 硬盘里,CPU能直接执行吗?为什么?如果CPU第一 次执行某条指令,它可能在Cache中取到它吗?为什 么? 答:主存中的ROM是开机后CPU执行的程序区,其 内保存开机自检与引导程序。2分 由于CPU不能直接访问硬盘,所以CPU不能执 行存放在硬盘里的开机执行程序。2分 CPU第一次执行某条指令,它也有可能在Cache 中取到它;因为该指令可能正好包含在已被执行过的 程序块中,该块属于被访问过的块已经进入Cache。 2分

数字逻辑与计算机组成原理:第二章 数据的表示与运算

数字逻辑与计算机组成原理:第二章  数据的表示与运算
数字逻辑与计算机组成原理
第二章 数据的表示与运算
第一节 数的表示
一、无符号数和有符号数
1、无符号数:
没有符号的数,寄存器中的每一位都可用 来存放数据
机器字长为n位,无符号数的表示范围 为0~2n-1
反映无符号数的表示范围
8位 16 位
0 ~ 255 0 ~ 65535
有两种常用的无符号表示法: ◆ 非负数码:表示0或一个正数
(1) 定义
整数
0,x
2n > x ≥ 0
[x]反 = ( 2n+1 – 1) + x 0 ≥ x > 2n(mod 2n+1 1)
x 为真值
n 为整数的位数
如 x = +1101
x = 1101
[x]反 = 0,1101
[x]反 = (24+1 1) 1101 = 11111 1101
用 逗号 将符号位
= 1,0010
和数值部分隔开
小数 x
[x]反 = ( 2 – 2-n) + x
1>x≥ 0 0 ≥ x > 1(mod 2 2-n)
x 为真值 n 为小数的位数
如 x = + 0.1101
x = 0.1010
[x]反 = 0.1101
[x]反 = (2 2-4) 0.1010
= 1.1111 0.1010
有符号小数: +0.1011,在机器中表示为
-0.1011,在机器中表示为
第一节 数的表示
一、无符号数和有符号数 2、有符号数
有符号整数: +1101,机器中表示为
-1101, 机器中表示为
第一节 数的表示
一、无符号数和有符号数

计算机组成原理CPU运算方法(Part4)

计算机组成原理CPU运算方法(Part4)

一、加减法运算 二、乘法运算 三、除法运算 四、浮点数运算 五、算术逻辑运算单元
简单回顾—基本逻辑电路
与、或、非、多路选择器
AND/OR/INVERT/MUX
a b Out
a b
Out
0 0 1 1
0 1 0 1
0 0 0 1
a
b
Out
a b
+
Out
0 0 1 1
0 1 0 1
0 1 1 1
简单回顾—基本逻辑电路
与、或、非、多路选择器
AND/OR/INVERT/MUX
a
Out
a 0 1
Out 1 0Biblioteka a b0Out
1
d 0 1
Out a b
d
简单回顾—2的补码表示法
假设A由 假设 由an-1an-2…a1a0表示 最高位a 最高位 n-1为符号位
an-1= 0 表示 为正数 表示A为正数 an-1= 1 表示 为负数 表示A为负数
n
2.2 补码乘法(一位比较法,又称一位Booth法) 补码乘法(一位比较法,又称一位Booth法 Booth
令 Q−1 = 0 则
[ P]补 = [ M × Q]补 = [ M] 补 × Q 1 1 1 1 n n n = Qn−2 − Qn−1 [ M]补 2 + Qn−3 − Qn−2 [ M]补 2 + L+ 0 − Q0 [ M]补 2 L 2 2 2 2 P0 = 0 1 P1 = P0 + ( Q−1 − Q0 )[ M ] 补 2 n 2 1 P2 = P1 + ( Q0 − Q1 )[ M ] 补 2 n 变成分步算式: 变成分步算式: 2 M 1 Pi = Pi −1 + ( Qi − 2 − Qi −1 )[ M ] 补 2 n 2 M 1 Pn = P n −1 +( Qn − 2 − Qn −1 )[ M ] 补 2 n 2

计算机组成原理第二章课后习题答案

计算机组成原理第二章课后习题答案

第二章运算方法和运算器练习一、填空题1. 补码加减法中,(符号位)作为数的一部分参加运算,(符号位产生的进位)要丢掉。

2. 为判断溢出,可采用双符号位补码,此时正数的符号用(00)表示,负数的符号用(11)表示。

3. 采用双符号位的方法进行溢出检测时,若运算结果中两个符号位(不相同),则表明发生了溢出。

若结果的符号位为(01),表示发生正溢出;若为(10),表示发生负溢出。

4. 采用单符号位进行溢出检测时,若加数与被加数符号相同,而运算结果的符号与操作数的符号(不一致),则表示溢出;当加数与被加数符号不同时,相加运算的结果(不会产生溢出)。

5. 利用数据的数值位最高位进位C和符号位进位Cf的状况来判断溢出,则其表达式为over=(C⊕Cf)。

6. 在减法运算中,正数减(负数)可能产生溢出,此时的溢出为(正)溢出;负数减(正数)可能产生溢出,此时的溢出为(负)溢出。

7. 补码一位乘法运算法则通过判断乘数最末位Yi和Yi-1的值决定下步操作,当YiYi-1=(10)时,执行部分积加【-x】补,再右移一位;当YiYi-1=(01)时,执行部分积加【x】补,再右移一位。

8. 浮点加减运算在(阶码运算溢出)情况下会发生溢出。

9. 原码一位乘法中,符号位与数值位(分开运算),运算结果的符号位等于(两操作数符号的异或值)。

10. 一个浮点数,当其补码尾数右移一位时,为使其值不变,阶码应该(加1)。

11. 左规的规则为:尾数(左移一位),阶码(减1)。

12. 右规的规则是:尾数(右移一位),阶码(加1)。

13. 影响进位加法器速度的关键因素是(进位信号的传递问题)。

14. 当运算结果的补码尾数部分不是(11.0×××××或00.1×××××)的形式时,则应进行规格化处理。

当尾数符号位为(01)或(10)时,需要右规。

补码加减法运算

补码加减法运算

[-y]补=0.0110
[x]补 + [-y]补
[x-y]补
计算机组成原理
1.0 0 1 1 0.0 1 1 0 1.1 0 0 1
∴x -y = - 0.0111
6
溢出及与检测方法
1.概念
在定点小数机器中,数的表示范围为|x|<1。在运算过程中如出现大于1
的现象,称为 “溢出”。
下溢
上溢
机器定点小数表示
T通常采用一个 “与非”门或一 个“或非”门的 时间延迟来作为 度量单位。
20
(1)对一位全加器(FA)来说,Si的时间延迟为6T(每级异或门延迟3T); Ci+1的时间延迟为5T。
Ci+1
Si
≥1
=1
&
&
=1
计算机组成原理
Ci
Ai Bi
21
(2)n位行波进位加法器的延迟时间ta为: 考虑溢出检测时,有: ta=n·2T+9T=(2n+9)T
发生溢出的原因,是因为运算结果超出编码所能表示的数字大小。 两个正数相加: 结果大于机器所能表示的最大正数,称为上溢; 两个负数相加:结果小于机器所能表示的最小负数,称为下溢。
计算机组成原理
7
例:x=+0.1011, y=+0.1001, 求x+y。
解:
[x]补=0.1011
[y]补=0.1001
计算机组成原理
补码加减法运算
2020年5月26日
计算机组成原理
1
补码加减法运算
1.原码加/减法运算
加法规则: 先判符号位,若相同,绝对值相加,结果符号不变; 若不同,则作减
法, |大| - |小|,结果符号与|大|相同。 减法规则:

计算机原理(岳乡成)补码加减法运算(公开课)

计算机原理(岳乡成)补码加减法运算(公开课)

范围,计算结果错误,就是所谓的溢出。
如何判断两个数在补码运算中是否会产生溢出: 判断的方法:双进位溢出判断法。 说明:使用这方法,要引入两个符号cs和cs+1,cs用来表示参加运算 的两个有符号数中数值位的最高位是否有向符号位进位的情况,有 进位,则cs=1,否则cs=0。Cs+1用来表示符号位是否有向更高位进位 的情况,有进位,则cs+1=1,否则cs+1=0。通过判断cs与cs+1的状态来 判断是否产生溢出,如果cs与cs+1相同(即cs与cs+1同时为0,或同时 为1),则不产生溢出;如果cs与cs+1相异(即cs和cs+1一个为0,一个 为1),则产生溢出。
计算机组成原理
9
计算机组成原理
3
2.补码减法
补码减法运算的规则:
[ x -y ]补=[ x ]补-[ y ]补=[ x ]补+[-y ]补(mod 2n)
两数差的补码等于两数补码之差
减法运算化为加法完成。关键是求[-Y]补
计算机组成原理
4
例: 解:
x= -0.1101,y= -0.0110,求x-y=? [x]补=1.0011 + [y]补=1.1010 [-y]补=0.0110
计算机组成原理
第三章复习1 补码加减法运算及溢 出的判断
计算机组成原理
1
1.补码加法运算 补码加法的规则: [ x ] 补+[ y ] 补=[ x +y ] 补
(mod 2n)
任意两数的补码之和等于该两数之和的补码,这是补码加法的理论基础。
补码加法的特点: (1)符号位要作为数的一部分一起参加运算; (2)在模2的意义下相加,即符号位之前多出的位为模,做丢失处理。

计算机组成原理第二章 第7讲 基本的加减法

计算机组成原理第二章 第7讲 基本的加减法

② 全加器(FA) 1位全加器真值表
输入
输出
Ai Bi Ci Si Ci+1 00000
00110
01010
01101
10010
10101
11001
11111
按照真值表可写出FA逻辑方程:
依照真值表,通过离散数学相关知识得到 描述其逻辑关系的1位全加器逻辑方程:
S A B C i
基本的加法/减法器
2.2.4基本的加法/减法器
基本的加法/减法器
• 半加器 Hi=Ai ⊕ Bi 不考虑进位
• 全加器 考虑低位进位Ci-1和向高位的进位Ci
各种逻辑门的图形符号
加法器
① 半加器——不考虑进位
YH
H n X n Yn X n Y n X n Yn
加法器
将若干个1位FA全加器串连即可实现N位行 波进位加法/减法器。
行(xing)波进位:
• 串行进位,高位的运算要等待低位的进位传到 才能执行,区别于并行进位或超前进位。
对行波进位加法/减法器的解读
1.行波进位加/减法器 n个1位的全加器(FA)可级联成一个n位
的行波进位加减器
2.M为方式控制输入线(控制进行加法,还 是减法运算):
4. n位行波进位加法器的延迟时间ta的计算 当前位全加和Si必须等低位进位Ci-1来到
后才能进行,加法时间与位数有关。
定义T:单级逻辑电路的单位门延迟 3T:异或门的延迟时间
FA逻辑电路和框图
11位位补补码码运运算算的的加加法法减减法法器器FA
加法器开启之后经过3T:
• 确定了是加运算还是减运算
当M=0时,作加法(A+B)运算; 当M=1时,作减法(A-B)运算;

计算机组成原理课件第二章补码加减法运算

计算机组成原理课件第二章补码加减法运算
C1 = A1B1+(A1⊕B1)C0=G1+P1C0 高位的运算依赖于低位运算的进位输入计算不能并行 能否提前得到当前位的进位输入??
23
并行加法器进位链
C1 = A1B1+(A1⊕B1)C0=G1+P1C0
C2 = A2B2+(A2⊕B2) C1=G2+P2C1 =G2+P2(G1+P1C0) =G2+P2G1+P2P1C0
其结论也适用于定点整数。
例: x=0.1001, y=0.0101, 求 x+y。
解:
[x]补=0.1001, [y]补=0.0101
[x]补 + [y]补
[x+y ]补
0. 1 0 0 1 0. 0 1 0 1 0. 1 1 1 0
所以
x+y=+0.1110
例: x=+0.1011, y=-0.0101, 求 x+y。
随之扩大,既能判别是否溢出,又能指出结果的符号。
双符号位法也称为“变形补码”或“模4补码” 。 定点小数变形补码定义:
x
[x]补=
4+x
0 x<1 -1 x<0
(mod 4)
字长n+2定点整数,变形补码定义:
[x]补=
x 2n+2+ x
n
0 x<2
(mod 2 n+2
)
-2 nx<0
采用变形补码后数的表示: • 任何小于1的正数: 两个符号位都是“0”,即 00.x1x2...xn; • 任何大于-1的负数:两个符号位都是“1”,即 11.x1x2…xn
2.补码加法运算
补码加法的公式:
[ x ]补+[ y ]补=[ x+y ]补

计算机组成原理计算机的运算方法(共56张PPT)精选全文

计算机组成原理计算机的运算方法(共56张PPT)精选全文

10 0001 0000
0000
0001
……
……
1001
1010
0
00110000
1
00110001
……
9
00111001
A
16 0001 0110
1111
F
由于ASCII码低四位与BCD码相同,转换方便。 ASCII码左移四位得BCD码, BCD码前加0011得ASCII码。
一般采用二进制运算的计算机中不采用BCD码,矫正不方便。 商用计算机中采用BCD码,专门设置有十进制运算电路。
八进制数与十六进制数之间,可将二进制数作为中介进行转换。
、数值的处理(数制转换)
3) BCD码(十进制):P214-215
如果计算机以二进制进行运算和处理时,只要在输入输出处理时进
行二 / 十进制转换即可。
但在商业统计中,二 / 十进制转换存在两个问题:
(1)转换占用实际运算很大的时间; (2)十进制的,无法用二进制精确表示;
例:将(0. 1)10转换成二进制数 ( 要求5位有效位) 。
结果
0.1×2
最高位 0 .2×2
… 0 .4×2
0 .8×2
1 .6×2
1 .2×2
0 .4×2
直到乘积的小数部分为0,
或结果已满足所需精度要求为止.
0 .8×2
最低位 1 .6000
可能永远乘不完,小数部分不为0, 意味存在一点误差。
2 105
余数
结果
2 52
1
2 26
0
2 13
0
26
1
23
0
21
1
0
1
直到商等于0为止

计算机组成原理第3章 运算器和运算方法

计算机组成原理第3章 运算器和运算方法

第三章运算方法和运算器3.1补码的移位运算1、左移运算:各位依次左移,末位补0对于算术左移,若没有改变符号位,左移相当于乘以2。

2、右移运算:算术右移:符号位不变,各位(包括符号位)依次右移。

(相当于除以2)逻辑右移:最高位补0,其余各位依次右移例1:已知X=0.1011 ,Y=-0.0101 求 [0.5X]补;[0.25X]补;[-X]补;2[-X]补;[0.5Y]补;[0.25Y]补; [-Y]补;2[-Y]补[X]补=0.1011 [Y]补=1.1011[0.5X]补=0.01011 [0.5Y]补=1.11011[0.25X]补=0.001011 [0.25Y]补=1.111011[-X]补=1.0101 [-Y]补=0.01012[-X]补=0.1010 (溢出) 2[-Y]补=0.10103.2定点加减法运算及其实现3.2.1 补码加减法运算方法由于计算机中的进行定点数的加减运算大都是采用补码。

(1)公式:[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补(证明过程见教材P38)例1 X=0.001010 Y=-0.100011 求[X-Y]补,[X+Y]补解:[X]补=0.001010 [-Y]补=0.100011则 [X-Y]补=[X]补+[-Y]补=0.001010 + 0.100011=0.101101 [X]补=0.001010 [Y]补=1.011101则 [X+Y]补=[X]补+[Y]补=0.001010 + 1.011101=1.100111例2:已知X=+0.25,Y=-0.625,求X+Y; X-Y写出计算的过程.例3:已知X=25,Y=-9,求X+Y; X-Y写出计算的过程.例4:已知X=-25,Y=-9,求X+Y; X-Y写出计算的过程.解: (8位二进制表示)例2: X=0.0100000 Y=-0.1010000[X]补=0.0100000 [Y]补=1.0110000则 [X+Y]补=[X]补+[Y]补=0.0100000 + 1.0110000=1.1010000[X+Y]原=-0.0110000=(-0.375)D[X]补=0.0100000 ,[-Y]补=0.1010000则 [X-Y]补 = [X]补+[-Y]补 = 0.0100000+0.1010000=0.1110000[X+Y]原 = 0.1110000 =(0.875)D例3: X=+0011001 Y=-0001001[X]补=00011001,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 00011001 + 11110111= 00010000[X+Y]原 =+0010000=(+16)D[X]补= 00011001 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 00011001 + 00001001= 00100010[X+Y]原 = +0100010 =(34)D例4: X=-0011001 Y=-0001001[X]补=11100111,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 11100111 + 11110111[X+Y]原 =-00100010=(-34)D[X]补= 11100111 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 11100111 + 00001001= 11110000[X+Y]原 = -0010000 =(-16)D3.2.2 定点加减法运算中的溢出问题溢出:运算结果大于机器所能表示的最大正数或者小于机器所能表示的最小负数.溢出只是针对带符号数的运算.比如:[X]补=0.1010,[Y]补=0.1001,那么[X]补+[Y]补=1.0011(溢出)溢出是一种错误,计算机中运算时必须能够发现这个现象,并加以处理判断溢出的方法:1、采用变形补码法[X+Y] 变补=[X] 变补+[Y] 变补[X-Y] 变补=[X] 变补+[-Y] 变补例1 X=0.1011 Y=0.0011 求[X+Y]补解: [X]变补 = 00.1011, [Y]变补 = 00.0011[X+Y]变补 = 00.1011 + 00.0011 = 00.1110所以 [X+Y]补 = 0.1110例2 X=0.1011 Y=0.1001 求[X+Y]补解: [X]变补 = 00.1011 [Y]变补 = 00.1001[X+Y]变补 = 00.1011 + 00.1001 = 01.0100运算结果的两符号位是01,不相同,发生溢出,因第一符号位是0,代表正数,所以称这种溢出为“正溢出”。

计算机组成原理-第2周下-定点加减法运算

计算机组成原理-第2周下-定点加减法运算
丢掉
[y]补= 1 1 0 1 1 10 0110
所以
x+y=+0110
6
例: x=-11001 ,y=-00011,求 x+y=?

解:[x]补=1 0 0 1 1 1, [y]补=1 1 1 1 0 1
[x]补=1 0 0 1 1 1 +
丢掉
[y]补=1 1 1 1 0 1 11 0 01 0 0 由以上三例看到,补码加法的特点: (1) 符号位要作为数的一部分一 起参加运算。 (2) 要在模2n+1的意义下相加, 即超过2n+1的进位要丢掉!
13
[例16] x=-1101, y=-1011,求x+y。 [解:] [x]补=10011 [y]补=10101 [x]补 + [y]补 [x+y]补 10011 10101 01000
两个负数相加的结果成为正数,这同样是错误的。 之所以发生错误,是因为运算结果产生了溢出。两个正数相 加,结果大于机器所能表示的最大正数,称为正溢出。而两个负数 相加,结果小于机器所能表示的最小负数,称为负溢出。

21
常见的门电路

1.与门 真值表表示的两输入端与门如表2-1所示,逻辑符号如图 2-1所示。从与门的逻辑关系上可以看出,如果输入端A 作为控制端,则A的值将会决定输入端B的值是否能被输 出到端口Y。
Y AB
A
B
Y=AB
0 0 0 0 1 0 1 0 0 1 1 1 表2-1 两输入端与门的真值表
27
5.或非门

真值表表示的两输入端或非门如表2-5所示,逻辑符号如 图2-5所示。可以利用或非门的输入端A来控制输入端B。 当A=0时,(输入信号被反相输出);当A=1时,则不管 B的值是什么,Y都为0。

计算机组成原理课件第四章计算机中的算术运算

计算机组成原理课件第四章计算机中的算术运算

例:[X]补=0.1101,[Y]补=0.1011,求X*Y=?
解: 部分积
乘数
说明
00.0000 + 11.0011
0. 1 0 1 1 0
YYnnY+1n=+10=10, 加[-X]补
11.0011 → 11.1001 + 00.0000
1. 0 1 0 1 1
右移一位
YnY n+1=11, 加0
当计数器i=n+1时,封锁LDR1和L
DR0控制信号,使最后一步不移位。
原码两位乘法
◦ 两位乘法即从乘数的最低位开始每次取两位乘数与被乘数 相乘得到一次部分积。
◦ Yi-1yi=00,相当于0×x,部分积加0,右移两位 ◦ Yi-1yi=01,相当于1×x,部分积加|x|,右移两位 ◦ Yi-1yi=10,相当于2×x,部分积加2|x|,右移两位 ◦ Yi-1yi=11,相当于3×x,部分积加3|x|,右移两位
采用双符号位的判断方法
每个操作数的补码符号用两个二进制数表示,称为 变形补码,用“00”表示正数,“11”表示负数,左边第 一位叫第一符号位,右边第一位称为第二符号位,两个 符号位同时参加运算,如果运算结果两符号位相同,则 没有溢出发生。如果运算结果两符号位不同,则表明产 生了溢出。“10”表示负溢出,说明运算结果为负数, “01”表示正溢出,说明运算结果为正数。
Zf=Xf+Yf=0+0=0 [Z]原=0 . 10001111 X*Y=0.10001111
原码一位乘法的逻辑电路图
R0存放部分积,R2存放被乘数,R1存放 乘数。
一、 R0清零,R2存放被乘数,R1存放乘数。 乘法开始时,“启动”信号时控制CX置1, 于是开启时序脉冲T,

计算机组成原理实验报告_八位补码加减法器的设计与实现

计算机组成原理实验报告_八位补码加减法器的设计与实现

计算机科学与技术学院计算机组成原理实验报告书实验名称八位补码加/减法器的设计与实现班级学号姓名指导教师日期成绩实验1八位补码加/减法器的设计与实现一、实验目的1.掌握算术逻辑运算单元(ALU)的工作原理。

2.熟悉简单运算器的数据传送通路。

3.掌握8位补码加/减法运算器的设计方法。

4.掌握运算器电路的仿真测试方法二、实验任务1.设计一个8位补码加/减法运算器(1)参考图1,在QUARTUS II里输入原理图,设计一个8位补码加/减法运算器。

(2)创建波形文件,对该8位补码加/减法运算器进行功能仿真测试。

(3)测试通过后,封装成一个芯片。

2.设计8位运算器通路电路参考下图,利用实验任务1设计的8位补码加/减法运算器芯片建立运算器通路。

3.利用仿真波形,测试数据通路的正确性。

设定各控制信号的状态,完成下列操作,要求记录各控制信号的值及时序关系。

(1)在输入数据IN7~IN0上输入数据后,开启输入缓冲三态门,检查总线BUS7~BUS0上的值与IN0~IN7端输入的数据是否一致。

(2)给DR1存入55H,检查数据是否存入,请说明检查方法。

(3)给DR2存入AAH,检查数据是否存入,请说明检查方法。

(4)完成加法运算,求55H+AAH,检查运算结果是否正确,请说明检查方法。

(5)完成减法运算,分别求55H-AAH和AAH-55H,检查运算结果是否正确,请说明检查方法。

(6)求12H+34H-56H,将结果存入寄存器R0,检查运算结果是否正确,同时检查数据是否存入,请说明检查方法。

三、实验要求(1)做好实验预习,掌握运算器的数据传送通路和ALU的功能特性。

(2)实验完毕,写出实验报告,内容如下:①实验目的。

②实验电路图。

③按实验任务3的要求,填写下表,以记录各控制信号的值及时序关系。

表中的序号表示各控制信号之间的时序关系。

要求一个控制任务填一张表,并可用文字对有关内容进行说明。

⑤实验体会与小结。

四、实验预习内容1.实验电路设计原理及思路说明本实验利用基本逻辑门电路设计一位全加器(FA),如表1:表1-一位全加器(FA)电路的输入输出信号说明然后以此基础上实现八位补码加/减法器的设计,考虑到实现所需既可以实现加法又可以实现减法,所以使用了一个M输入来进行方式控制加减。

计算机组成原理的公式

计算机组成原理的公式

1、浮点数:尾数*2阶码步骤:①把十进制转化成二进制,写成如上形式②把尾数和阶码求补码(阶码还可以求移码)③写成浮点数的表示格式:⑴阶码+尾数(数符+尾数值)⑵数符+阶码+尾数值④注意规格化2补码①正数:补码=原码②负数:补码=除符号位,其他数全部取反,末位加12、[-x]补=[x]补包括符号位全部取反,末位加13、移码=补码的符号位取反4、补码一位乘法①y n=y n+1,只右移一位部分积②y n=0,加[x]补,再右移一位;y n=1,加[-x],再右移一位。

补5、海明码:步骤①根据题目中收端的N=k+r≤2r—1(N为校验码位数)②按位置标出Pi和Bi③分别求出Pi的值④写入海明码数中。

纠错①计算Gi,得出的二进制数转化为十进制数,G1G2G3=000表示无错②等于几就是第几个数字错③将错的数字取反@表示异或㈠11位校验码中,P1=b1@b2@b4@b5@b7;P2=b1@b3@b4@b7;P3=b2@b3@b4;P4=b5@b6@b7㈡纠错中,G1=P1@b1@b2@b4@b5@b7;G2=P2@b1@b3@b4@b7;G3=P3@b2@b3@b4;G4=P4@b5@b6@b76、高速缓存的基本原理①CPU与cache之间的数据交换是以字为单位,而cache与主存之间的数据交换是以块为单位。

一个块由若干定长字组成的。

②当CPU读取主存中一个字时,便发出此字的内存地址到cache和主存。

此时cache控制逻辑依据地址判断此字当前是否在cache中:若是,此字立即传送给CPU;若非,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。

步骤:①把十进制转化成二进制,写成如上形式②把尾数和阶码求补码(阶码还可以求移码)③写成浮点数的表示格式:⑴阶码+尾数(数符+尾数值)⑵数符+阶码+尾数值④注意规格化2补码①正数:补码=原码②负数:补码=除符号位,其他数全部取反,末位加16、[-x]补=[x]补包括符号位全部取反,末位加17、移码=补码的符号位取反8、补码一位乘法①y n=y n+1,只右移一位部分积②y n=0,加[x]补,再右移一位;y n=1,加[-x],再右移一位。

补码加减法运算(计算机组成原理)

补码加减法运算(计算机组成原理)

1.0 0 1 1 0.0 1 1 0 1.1 0 0 1
∴x -y = 0.0111
5
溢出及与检测方法
1.概念
在定点小数机器中,数的表示范围为|x|<1。在运算过程中如出现大于1
的现象,称为 “溢出”。
下溢
上溢
机器定点小数表示
计算机组成原理
6
例:x=+0.1011, y=+0.1001, 求x+y。
补码加减法运算
1.原码加/减法运算
加法规则: 先判符号位,若相同,绝对值相加,结果符号不变; 若不同,则作减
法, |大| - |小|,结果符号与|大|相同。 减法规则:
两个原码表示的数相减,首先将减数符号取反,然后将被减数与符号取 反后的减数按原码加法进行运算。
计算机组成原理
1
2.补码加法运算 补码加法的公式:
[x]补 1. 0 0 1 1
+ [y]补 1. 0 1 0 1
[x+y]补 0. 1 0 0 0
两个负数相加的结果成为正数,这同样是错误的。
计算机组成原理
7
发生错误的原因,是因为运算结果超出编码所能表示的数字大小。 两个正数相加: 结果大于机器所能表示的最大正数,称为上溢; 两个负数相加:结果小于机器所能表示的最小负数,称为下溢。
时间延迟
典型门电路的逻辑符号和延迟时间
门的名称 门的功能 逻辑符号(正逻辑) 时间延迟
与非
NAND
T
或非
NOR
T

NOT
T

AND
2T

OR
2T
异或
XOT
3T
异或非
XNOR

计算机组成原理-定点整数的原码补码运算(待验证)

计算机组成原理-定点整数的原码补码运算(待验证)

计算机组成原理-定点整数的原码补码运算(待验证)计算机组成原理 - 定点整数的原码补码运算(待验证)⽬录〇、环境对象运算定点整数原码、定点整数补码移位、加、减、乘、除原码定义:x =x0≤x <2n 2n −x −2n <x ≤0其中,n 为x 的位数,最终原码有n+1位。

定义分析:当真值为正时,原码即为真值的⼆进制形式,但是在⼆进制最⾼位添加⼀个0作为符号位(定义没有体现)。

当真值为负时,去掉原码⼆进制形式的负号,在⼆进制最⾼位添加⼀个1作为符号位。

伸展和收缩:由定义分析可知,x 宽度变化时,⾮符号部分添加或移除⾼位0(也即整数的⼆进制形式调整宽度),符号部分不变。

在形式上,⽆论正负,都是在最⾼位新增或移除0。

例0-1 求11b 的8位原码表⽰解:为011,扩展到8位为0000 0011。

例0-2 求−11b 的8位原码表⽰解:100-(-11)=111,扩展到8位为0000 0111。

补码定义:x =x0≤x <2n 2n +1+x −2n ≤x <0其中n 为x 的位数,最终有n+1位(去掉⼀定为0的最⾼位)。

定义分析:当真值为正时,保留真值的⼆进制形式,并在最⾼位添加⼀个0作为符号位。

当真值为负时,则与10...0(共n+2位)相加,联系反码的特点,即将真值负号移除后每位取反,然后加1,然后最⾼位添加1作为符号位。

伸展与收缩:由定义分析,当真值为正时,则和原码⼀致,添加0即可。

当为负时,扩展添0,取反后则为添1,加1时不会影响扩展位(因为负值的⼆进制形式必不全为0),最后保持符号位不变。

形式上,正值在最⾼位添加和删除0,负值扩在最⾼位添加和删除1。

例0-3 求11的8位补码表⽰解:为011,扩展到8位为0000 0011。

例0-4 求-11的8位补码表⽰解:为1000-11=0101,即101,扩展到8位为1111 1101。

还可以利⽤性质来求:^11=00,00+1=01,添加符号位即101。

国开作业《计算机组成原理》 (9)

国开作业《计算机组成原理》 (9)

题目:1.某机字长16位,采用定点小数表示,符号位为1位,尾数为15位,则可表示的最大正小数为,最小负小数为。

选项A:+(216-1),-(1-2-15)选项B:+(215-1),-(1-2-16)选项C:+(1-2-15),-(1-2-15)选项D:+(215-1),-(1-2-15)答案:+(1-2-15),-(1-2-15)题目:2.定点数补码加法具有两个特点:一是符号位;二是相加后最高位上的进位要舍去。

选项A:与数值位分别进行运算选项B:与数值位一起参与运算选项C:要舍去选项D:表示溢出答案:与数值位一起参与运算题目:3.长度相同但格式不同的2种浮点数,假设前者阶码长、尾数短,后者阶码短、尾数长,其他规定均相同,则它们可表示的数的范围和精度为。

选项A:两者可表示的数的范围和精度相同选项B:前者可表示的数的范围大但精度低选项C:后者可表示的数的范围大且精度高选项D:前者可表示的数的范围大且精度高答案:前者可表示的数的范围大但精度低题目:4.在定点二进制运算器中,减法运算一般通过来实现。

选项A:原码运算的二进制减法器选项B:补码运算的二进制减法器选项C:补码运算的十进制加法器选项D:补码运算的二进制加法器答案:补码运算的二进制加法器题目:5.间接寻址是指。

选项A:指令中直接给出操作数地址选项B:指令中直接给出操作数选项C:指令中间接给出操作数选项D:指令中间接给出操作数地址答案:指令中间接给出操作数地址题目:6.输入输出指令的功能是。

选项A:进行算术运算和逻辑运算选项B:进行主存与CPU之间的数据传送选项C:进行CPU和I/O设备之间的数据传送选项D:改变程序执行的顺序答案:进行CPU和I/O设备之间的数据传送题目:7.指令周期是指。

选项A:CPU从主存取出一条指令的时间选项B:CPU执行一条指令的时间选项C:CPU从主存取出一条指令加上执行这条指令的时间选项D:时钟周期时间答案:CPU从主存取出一条指令加上执行这条指令的时间题目:8.在控制器中,必须有一个部件,能提供指令在内存中的地址,服务于读取指令,并接收下条将被执行的指令的地址,这个部件是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档