第4章 数值的机器运算(终)
第4章 数值的机器运算
哈尔滨学院2014年秋季学期单元测试试卷课程名称:计算机组成原理单元名称:第四章数值的机器运算一、填空题1.影响并行加法器速度的关键因素是。
2.A、B均为8位二进制数,A=F0H,B=E0H,则A+B= ,A-B= 。
C4.两个补码数相加,采用1位符号位,当时,表示结果溢出。
A.符号位有进位B.符号位进位和最高数位进位异或结果为0C. 符号位为1D.符号位进位和最高数位进位异或结果为15.在双符号位判断溢出的方案中,出现正溢时,双符号位应当为。
A. 00B. 01C. 10D. 116.在定点机中执行算术运算时会产生溢出,其原因是。
A.主存容量不够 B.操作数过大C.操作数地址过大D.运算结果无法表示7. 当定点运算发生溢出时,应进行。
A. 向左规格化B.向右规格化91112.X、C.n+1 D. n+213.原码加减交替除法又称为不恢复余数法,因此。
A.不存在恢复余数的操作B.当某一步运算不够减时,做恢复余数的操作C.仅当最后一步余数为负时,做恢复余数的操作D.当某一步余数为负时,做恢复余数的操作14.在加法器、寄存器的基础上增加部分控制电路实现除法时,用B寄存器存放。
A.被乘数和被除数B.被乘数和除数C. 乘数和被除数D.乘数和除数15.若浮点数用补码表示,判断运算结果是否是规格化数的方法是。
16.20.计算机中的累加器。
A .没有加法器功能,也没有寄存器功能B.没有加法器功能,有寄存器功能C. 有加法器功能,没有寄存器功能D.有加法器功能,也有寄存器功能21.一个C 语言程序在一台32位机器上运行。
程序中定义了3个变量x 、y 和z ,其中x 和z 为int 型,y 为short 型。
当x=127、y=-9时,执行赋值语句z=x+y 后,x 、y 和z 的值分别是A .H z H FFF y FH x 00000076,9,0000007===B .H FFFF z H FFF y FH x 0076,9,0000007===C. H FFFF z H FFF y FH x 0076,7,0000007===D .H z H FFF y FH x 00000076,7,0000007===222325A. y x +B. y x +-C. y x -D. y x --三、判断题1.进位信号串行传递的加法器称为串行加法器。
04计算机系统概论(第四章)
2.补码加法 补码加法
直接用补码相加,符号位也参与运算.但注意溢 直接用补码相加,符号位也参与运算.但注意溢 这会导致结果的错误. 出.这会导致结果的错误.尤其易发生在同号相 加的情况下.如例2 加的情况下.如例 解决方法: 解决方法:变形补码
补码解例2. 例3:用模 补码解例 :用模4补码解例 解:选H=2,则有 ,则有[0.5X]变补=00,01001 [0.5Y]变补 =00,01101 即 [0.5(X+Y)]变补= 00,01001 + 00,01101=00,10110 ( X+Y=+101100 即 0.5(X+Y) =+10110 ( )
2,逻辑运算 ,
基本规则:对相同位运算,不够补 基本规则:对相同位运算,不够补0 没有进位和借位 则结果为1, (1)逻辑或:相同位有 则结果为 ,无 )逻辑或:相同位有1则结果为 1则结果为 . 则结果为0. 则结果为 则结果为0, (2)逻辑与:相同位有 则结果为 ,无 )逻辑与:相同位有0则结果为 0则结果为 . 则结果为1. 则结果为 (3)逻辑非:逐位取反. )逻辑非:逐位取反. (4)逻辑异或:相同位基数不同为 ,相同为 )逻辑异或:相同位基数不同为1,相同为0
定点原码两位乘法要注意的问题
当YiYi-1为11时:11表示部分积要加上三倍的 时 表示部分积要加上三倍的 - 被乘数,这与给乘数加4( 被乘数,这与给乘数加 (100)2再减去被乘数 ) 效果一样. 效果一样. 部分积减去被乘数X用+[-x]补实现的 部分积减去被乘数 用+[- ] 部分积减去被乘数所得结果一般为负数. 部分积减去被乘数所得结果一般为负数. 注意符号位的扩展. +[-x] 要给出符号位, 注意符号位的扩展. +[- ]补要给出符号位, 右移时需要扩展符号位.若采用n+2位加法器则 右移时需要扩展符号位.若采用 位加法器则 符号位扩展2位,若采用n+1位加法器则符号位 符号位扩展 位 若采用 位加法器则符号位 扩展1位 依此类推. 扩展 位,依此类推.
四章数据的机器运算
单级先行进位
构成16 位加法 器很容 易实现
以16位加法器为例,将其分为4组,每组4位。
在组内,按照并行进位函数直接产生C1~C4,这 些进位可同时得到。实现这种进位逻辑的电路称 为4位先行进位电路(CLA),如74181ALU。
利用这种4位一组的CLA电路和4位全加器可以构 成4位CLA加法器。注意,4位CLA加法器包含了 两部分逻辑:4位全加器和4位一组的先行进位链, 这个组内的进位为一级进位。
可以看出,这4组进位结构与前述4位先行进位逻辑完全相同, 组间进位信号只与最低进位C0有关,所以能同时产生。
15
多级先行进位(续二)
组内进位信号能同时产生、组间进位信号也能同时产 生,由此可以构成多级并行进位逻辑。16位2级先行 进位加法器如下图所示。
16
多级先行进位(续三)
问题是这4个组间进位信号如何用硬件来产生呢? 对于多级先行进位的实现可以按如下思路来理解:
∴ 判别条件为:溢出= XsYsSs+XsYsSs 其中,Xs、Ys为参加运算两数的符号, Ss为结果符号位。
30
补码加减溢出的判别方法(续)
②采用进位位判别
两符号个位正不数产相生加进,位当(最C高s=有0效)位时产,生发进生位上溢(;C1=1)而 两而符个号负位数产相生加进,位当,最发高生有下效溢位。不产生进位(C1=0)
四章数据的机器运算
本章主要内容
主要内容
算术、逻辑运算的实现 定点加、减运算 数的移位和舍入操作 定点乘、除运算 规格化浮点运算
2
全加器的逻辑方程和电路
根据真值表得:
Si=Ai⊕Bi⊕Ci-1 Ci=AiBi+(Ai⊕Bi)Ci-1
Si : 本位和 Ci : 向高位的进位 一个全加器只完成一位加法
计算机组成原理:4-2 数值的机器运算
( 小数点不动 !)
左移 ——绝对值扩大
右移—— 绝对值缩小
在计算机中,移位与加减配合,能够实现
乘除运算。
逻辑移位
逻辑移位——无符号数的移位。
逻辑左移:低位添 0,高位移丢。
0 逻辑右移:高位添 0,低位移丢。
0
例:
01010011
逻辑左移 10100110
逻辑右移 00101001
算术移位
较大正数相加 产生进位,影
响符号位
解: [X]补= 0 , 1 0 1 0 + [Y]补= 0 , 1 0 0 1 1,0011
设字长为5
例2:X=-1010 Y=-1011 求 X+Y
解: [X]补= 1, 0 1 1 0
+ [Y]补= 1, 0 1 0 1 0,1011
较大的负数对应较 小的正数补码,相 加无进位,符号位
例: X=-0.1100 Y=-0.1000,求 X+Y=? 解:设字长为5.
[X]补=11. 0100 + [Y]补=11. 1000
10. 1100 结果说明:
负数绝对值太大了对应的补码小,最高数据位向前无进位, 而符号位向前有进位; 两个符号位:10,表示负上溢
双符号位法溢出逻辑表达式为:V=Sf1⊕ Sf2
在模2意义下,任意两数的补码之和等于该两数之和 的补码。 这是补码加法的理论基础。
特点:
不需要事先判断符号,符号位与数值位一起参加 运算,符号位相加后若有进位,则舍去该进位数字。
补码加法运算举例
例: X=+0.1010, Y=+0.0011,求 X+Y 解: 设字长为5.
[X]补=0. 1 0 1 0 + [Y]补=0. 0 0 1 1
第4章 计算机的运算基础 苏州大学计算机科学导论
阶码
尾数
阶符
尾符
清华大学出版社
计算机学科概论(第2版)
第 4 章 计算机的运算基础——信息的编码
浮点数的编码
例4.12 设X=3.625,假设用12位二进制数表示一个浮点数, 其中阶码占4位,尾数占8位,则其浮点表示如下:
(3.625)10=(11.101)2=0. 11101×210 阶码为+10,其补码为010,由于阶码占4位,则阶码表示为 0010(注意是在阶码的前面补0,因为阶码是整数);尾数 为+0.11101,其补码为011101,由于尾数占8位,则尾数表示 为01110100(注意是在尾数的后面补0,因为尾数是纯小 数)。最后,X的浮点表示为:001001110100。
清华大学出版社
计算机学科概论(第2版)
第 4 章 计算机的运算基础——数理逻辑
命题逻辑
命题是一个有具体意义且能够判断真假的陈述句,命题 所具有的值称为真值。 命题分为原子命题和复合命题两种类型。 原子命题是不能分解为更为简单的陈述句的命题; 复合命题是将原子命题用连接词复合而成的命题。 例: (1)长春是吉林省的省会城市。 (2)3 乘以 8 等于 16。 (3)姚大龙既擅长书法又擅长绘画。
模拟信息:用连续形式表示的信息称为模拟信息。真实世界 的信息大多是连续的、无限的,如天气的变化、移动的距离、 色彩的渐变、声音的波,等等。
数字信息:用离散形式表示的数字化信息称为数字信息。
计算机内部是一个二进制数字世界,而且计算机内存是有限 的,计算机的硬件设备能处理的信息也是有限的,数据处理首 先要解决的问题是如何用有限的计算机表示无限的真实世界。
r进制数通常写作(an…a1a0.a-1…a-m)r 例如, (1101)2, (689.12)10。
计算机组成原理第4章
本章学习要求
• 掌握:定点补码加法和减法运算方法 • 理解:3种溢出检测方法 • 理解:补码移位运算和常见的舍入操作方法 • 了解:串行加法器与并行加法器 • 理解:进位产生和进位传递 • 掌握:定点原码、补码乘法运算方法 • 掌握:定点原码、补码加减交替除法运算方法 • 理解:浮点加减乘除运算 • 理解:逻辑运算 • 了解:运算器的基本结构及浮点协处理器
第4章 数值的机器运算
设操作数信号为4、3、2、1、(最低 位信号为1)。向最低位进位的信号为C0、 Gi、Pi 分别是各位的进位产生函数和进位 传递函数。
(1)完善第4位先行进位信号的逻辑表达 式。 C4=G4+P4G3+……
(2)基于操作数,试述表达式中各项的 实际含义。
第4章 数值的机器运算
[-Y]补=[[Y]补]变补
第4章 数值的机器运算
2.补码减法(续)
“某数的补码表示”与“变补”是两个不 同的概念。一个负数由原码转换成补码时,符 号位是不变的,仅对数值位各位变反,末位加 “1”。而变补则不论这个数的真值是正是负, 一律连同符号位一起变反,末位加“1”。[Y]补 表示的真值如果是正数,则变补后[-Y]补所表示 的真值变为负数,反之亦然。
第4章 数值的机器运算
16位单级先行进位加法器
S1 6~S1 3
S1 2~S9
S8~S5
S4~S1
C16 4位CLA C12 4位CLA C8 4位CLA C4 4位CLA
加法器
加法器
加法器
加法器
C0
A1 6~A1 3
A1 2~A9
B1 6~B1 3
B1 2~B9
A8~A5 B8~B5
ch数值的机器运算乘法
x=0.x1x2......xn <1 y=0.y1y2......yn <1
其乘积为:
x·y=x(0.y1y2......yn ) n =x(y12-1 +y22-2 +…+ yn2-n ) x yi 2i i 1 = xy12-1+xy22-2 +…+xyn2-n = 2-1(y1x+2-1(y2x+2-1(…+2-1(yn-1x+2-1(ynx+0))…)))
0 1 yf 0 1 0
1 1.0 1 1 0
1 1.1 0 1 1 + 1 1.0 0 1 1
0 0 1 yf 0 1
1 0.1 1 1 0
1 1.0 1 1 1
0 0 0 1 yf
最后结果 : [xy]补=1.01110001
说明 z0=0 y4=1, +x
右移,得z1 y3=1, +x
右移,得z2 y2=0, +0
ch数值的机器运算乘 法
4.4.1原码一位乘法
1. 乘法的手工算法
设n位被乘数和乘数用定点小数表示
被乘数 乘数
则乘积
[x]原=xf . xn-1… x1x0 [y]原=yf . yn-1… y1y0
[z]原=(xf⊕yf)+(0. xn-1… x1x0)(0. yn-1… y1y0)
式中,xf为被乘数符号,yf为乘数符号。
乘数 yf 1 0 1 0 1
1 yf 1 0 1 0
0 1 yf 1 0 1
0 0 1 yf 1 0
0 0 0 1 yf 0001
说明
计算机组成2-3数值的机器运算
操作数所在内存单元的 地址通过寄存器间接给 出。
典型寻址方式举例
01
02
03
04
05
立即寻址举例
直接寻址举例
间接寻址举例
寄存器寻址举例 寄存器间接寻址 举例
ADD R1, #5 ;R1←R1+5, MOV AX, [2000H] ; 将寄存器R1中的内容与立即 AX←(2000H),将内存单元 数5相加,结果存放在R1中。 2000H中的内容传送到AX
02 计算机的层次结构
微程序机器级别、传统机器语言级别、操作系统 级别、汇编语言级别、高级语言级别。
03 计算机的工作过程
取指令、分析指令、执行指令和取下一条指令。
数值的机器运算意义
数值运算是计算机的基本功能之一,是实现各种 01 复杂计算的基础。
机器运算的速度和精度直接影响计算机的性能。 02
掌握数值的机器运算原理有助于理解和优化计算 03 机程序。
虚拟存储器的优势
提供更大的地址空间、实现内存保护、 支持多任务系统和实现内存共享等。
虚拟存储器的实现
通过页表或段表等数据结构实现逻辑地址 到物理地址的映射,同时借助操作系统的 内存管理功能实现页面的换入换出。
07
输入输出系统设计与优化
输入输出系统概述
输入输出设备
包括键盘、鼠标、显示器、打印机等,用于实现计算机与外部世界 的信息交换。
十进制数表示法
01
十进制数是我们日常生活中最常用的数值表示方法,也称为普通数或常规数。
02
十进制数基于10个不同的数字符号(0-9)来表示数值,采用“逢十进一”的计数 规则。
03
在计算机中,十进制数可以转换为二进制数进行处理和存储,转换方法包括整 数部分的“除2取余”法和小数部分的“乘2取整”法。
第章数值的机器运算
哈尔滨学院2014年秋季学期单元测试试卷课程名称:计算机组成原理 单元名称:第四章 数值的机器运算一、 填空题1 .影响并行加法器速度的关键因素是 ________ O2. A 、B 均为8位二进制数,A=F0H , B=E0H ,贝U A+B= ______ , A-B= ________ 3 ______ ,算术右移 1位后得 ________ O4. _____________________________ 向左规格化的规则为尾数 ,阶码为O5. _____________________________ 运算器的基本功能室实现 运算和 运算。
二、 选择题1 .在串行进位的并行加法器中,影响加法器运算速度的关键因素是 _____________A .门电路的级延迟 C .进位传递延迟2.并行加法器中每一位的进位产生函数 A . A i *B iC . A i 二 B i 二 C iD. A B i C i3 .补码力廿/减法是指 _______________ OA .操作数用补码表示,两尾数相加/减,符号位单独处理 B.操作数用补码表示,符号位和尾数一起参加运算,结果的符号与加/减数相同C. 操作数用补码表示,连同符号位直接相加,减某数用加某数的机器负数代替,结果 的符号在运算中形成D .操作数用补码表示,由数符决定两尾数的操作,符号位单独处理4. ___________________________________________ 两个补码数相加,采用1位符号位,当 ______________________________________________ 时,表示结果溢出。
A .符号位有进位B. 符号位进位和最高数位进位异或结果为 0 B .元器件速度D .各位加法器速度的不同Gi 为________________ OB . A 二 B iC. 符号位为1D .符号位进位和最高数位进位异或结果为15. ____________________________________________________________ 在双符号位判断溢出的方案中,出现正溢时,双符号位应当为___________________________ OC. 10D. 116. __________________________________________________ 在定点机中执行算术运算时会产生溢出,其原因是 _____________________________________8. _________ 。
第4章 机器数的运算方法及运算器.
第4章机器数的运算方法及运算器4.1 机器数的加减运算及其实现4.1.1 原码加法1.符号相同的两个原码相加:符号相同的两个原码相加,只要两个数的数值相加即可,其符号不变。
例4.1 设X=+10001,Y=+01011,求Z=X+Y解:即,Z=+11100。
例4.2 设X=-10001,Y=-01011,求Z=X+Y2.符号相异的两个原码相加:先比较两数的绝对值大小,用绝对值大的数减去绝对值小的数,结果的符号是绝对值大的数的符号。
【例4.3】设X=+10101,Y=-01010,求Z=X+Y解:先比较X与Y的绝对值,本题∣X∣>|Y|,所以做减法|X∣-|Y|,结果是Z=+01011例4.2 设X=+01010,Y=-10111,求Z=X+Y解:先比较X与Y的绝对值,本题∣Y∣>|X| ,所以做减法|Y∣-|X|,结果是Z=-01101用原码进行符号不同的两个数相加时有以下三步运算:①比较两个数的绝对值的大小;②绝对值大的数的绝对值减去绝对值小的数的绝对值;③结果赋以绝对值大的那个数的符号。
4.1.2 补码加法补码运算特点:①补码运算时,不用判断符号位,符号位与数值一块参与运算;②两数相加之后,进位的最高位超出字长部分自动丢失。
1.定点补码运算性质性质1 两数之和的补码等于两数补码之和。
[X+Y]补=[X]补+[Y]补例4.5 设X=+11010,Y=-10101,用补码的加法求Z=X+Y解:加数和被加数的数值位都是5位,在数值位之前加1位符号位。
这样,[X]补=011010,[Y]补=101011[X+Y]补= [X]补+[Y]补= 011010+101011=000101所以,X+Y=+00101。
注意:在运算中,数值位和符号位有进位,本例采用单符号位,以2为模,进位的1就丢掉了。
例4.6 设X=+10101,Y=-11010,用补码加法求Z=X+Y解:[X]补= 010101,[Y]补=100110[X+Y]补=[X]补+[Y]补= 010101+100110=111011所以,X+Y=-00101。
第四章 机器数的运算方法
解: [x]补=1.0011 [y]补=1.1010 [x]补 + [-y]补 [x-y]补
∴x-y = -0.0111
例: x=+0.1011, y=+0.1001, 求x+y。 解: [x]补=0.1011 [y]补=0.1001 [x]补 0. 1 0 1 1 + [y]补 0. 1 0 0 1 [x+y]补 1. 0 1 0 0 两个正数相加的结果成为负数,发生溢出。
按同样的规则共做n1步运算后假商q移出了存放商的寄存器剩下q01左移一位商1010左移一位商00101左移一位商101010左移一位商010100仅q左移一位商0余数不左移被除数x1010000001校正量10011计算机组成原理补码一位除法的算法是在商的末位恒置1的舍入条件下推导的故此算法存在误差这样引起的最大误差是2即使商的最后一位总是1
解: [x]补=0.1101 [ y]补=0.0110, [-y]补=1.1010 [x]补 +[-y]补 [x-y]补
计算机组成原理
0.1101 1.1010 10.0111
∴ x-y=+0.0111
例:
x= -0.1101,y= -0.0110,求x-y=? [-y]补=0.0110 1.0 0 1 1 0.0 1 1 0 1.1 0 0 1
特点:每次只需要相加两个数,然后右移一位。且相加的两个 数(部分积和位积)都只有n位,因而不需要2n位的全加器。
计算机组成原理
3.原码一位乘法 流程图
n
开始 i=0, zi = 0 yn= 1 ?
y zi + x
zi + 0
zi , y右移一位,i = i+1 n i=n? y 结束
ch4-1 数值的机器运算-加减法
思考: 已知[y]移如何求[-y]移?
我们能体验的最美好的东西是神秘的事物,它是所有真正艺术和 科学的来源。(爱因斯坦)
19/37
4.2.5 移码加减法 ②混合使用移码和补码 考虑到移码和补码的关系: 对同一个数值, 其数值位完全相同, 而符号位正好完全相反。 [y]补的定义为 [y]补= 2n+1 +y (mod 2n+1) 则移码和用如下方式完成: [x]移+[y]补= 2n +x+ 2n+1 +y = 2n+1 + (2n +(x+y)) 即: [x+y]移= [x]移+[y]补 (mod 2n+1) 同理: [x-y]移= [x]移+[-y]补 (mod 2n+1)
8/37
例: x=+0.1101, y=+0.0110, 求 x-y。 解: [x]补=0.1101 [x]补 + [ - y] 补 [x-y]补 例: [ y]补=0.0110, 0.1101 1.1010 10.0111 [-y]补=1.1010
∴ x-y=+0.0111
x= -0.1101,y= 0.1010,求x-y=? [y]补=0.1010 [-y]补=1.0110
• 当低位符号位为 0时,(10) 表明结果上溢, • 当低位符号位为1时, (11) 表明结果下溢。 • 当最高符号位为0时, 表明没有溢出:
我们能体验的最美好的东西是神秘的事物,它是所有真正艺术和 科学的来源。(爱因斯坦)
低位符号位为1, (01) 表明结果为正; 为0, (00) 表明结果为负。
4.
加过加上符号位。
我们能体验的最美好的东西是神秘的事物,它是所有真正艺术和 科学的来源。(爱因斯坦)
计算理论第4章 图灵机全面.ppt
许桂靖 杨 莹
精选
Overview
图灵机(Turing Machine,TM),是 计算机的一种简单的数学模型。
历史上,冯•诺曼计算机的产生就是由 图灵机诱发的。
丘奇—图灵论题:一切合理的计算模 型都等同于图灵机.
精选
类型 文 法 结 构 产 生 式 形 式 限 制 条 件
0 短语结构文法 Phrase Structure
精选
4.1 图灵机模型
定义4-3 瞬时描述ID1经过一步变为瞬时描述ID2,称
ID1与ID2具有一步变化关系,表示为 ID1├ID2
若ID1经过n步变为ID2(n≥0),即有 ID1├ID├… ├ ID2
称ID1与ID2具有多步变化关系,简记为 ID1 ├*ID2
精选
4.1 图灵机模型
定义4-4 对于图灵机M = ( K, Σ, Γ, δ, q0, B, F),定义图灵机接受的语言集 L(M) 为 L(M)={w|∈Σ* ∧q∈K∧qf ∈F ∧q0w├*u0qB├*uqfv)}
精选
4.1 图灵机模型
【例4-1】设计一个图灵机,使得 L(M) = {0 n1 n | n≥1}。
设计思路: 在带上每当将一个0变为X,就把 一个1变为Y。当将所有的0变为X时,恰将 所有的1变为Y,这个串就是合法的,最后 将X、Y分别还原为0、1。
精选
4.1 图灵机模型
精选
4.1 图灵机模型
精选
4.1 图 灵 机 模 型
精选
4.1 图灵机模型
【例4-4】设计一个图灵机,计算二个自然数m、n
的减法:
m-n 若m≥n
m-n=
0 否则
设计时,整数n用0n表示。开始时,带上符号为 0m10n,结束时,带上符号为0。每当在1的左边 将一个0改变为B,就在1的右边将一个0改为1, 若1的右边无0时,再将左边改为B的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,
第4章数值的机器运算(2015)详述
计算机组成原理
11 7 -14
-11 -7 14
40
4.2 定点加减运算
计算机组成原理
(3)采用变形补码(双符号位补码)
➢ 左边的符号位Ss1叫真符,代表该数真正的符号, 两个符号位都作为数的一部分参加运算
Ss1Ss2=00 结果为正数,无溢出 Ss1Ss2=01 结果正溢 Ss1Ss2=10 结果负溢 Ss1Ss2=11 结果为负数,无溢出
计算机组成原理
3
第4章
计算机组成原理
➢ 了解串行加法器与并行加法器的区别
➢ 理解进位产生和进位传递的概念
➢ 掌握并行加法器不同进位方式的特点与区别
4
第4章
计算机组成原理
➢ 运算器是计算机进行算术运算和逻辑运算的主要 部件
➢ 运算器的逻辑结构取决于机器的指令系统、数据 表示方法和运算方法等
➢ 本章讨论数值数据在计算机中实现算术运算和逻 辑运算的方法,以及运算部件的基本结构和工作 原理
若真值为纯整数,补码形式为 XsX1X2…Xn,其中Xs表示符号位
[X]补=
X
0≤X<2n
(mod 2n+1)
2n+1+X=2n+1-|X| -2n ≤ X<0
12
4.2 定点加减运算
计算机组成原理
2. X>0, Y<0
由补码定义:[X]补=X, [Y]补=M+Y (mod M)
[X]补+[Y]补=X+M+Y
38
4.2 定点加减运算
0,0 0 1 1 + 0,0111111
计算机组成原理:4-4 数值的机器运算
例1:若某次运算的中间结果为 [X+Y]浮=00,111, 10.1011 则应对其进行向右规格化操作:
尾数为: 11.0101 , 阶码加1: 01 000 (溢出)
例2:若某次运算的中间结果为 [X+Y]浮=11,001, 00.0011
则应对其进行向左规格化操作: 尾数为: 00.1100 , 阶码减2:
右移一位, 得z4 YnYn+1=01, 加[X]补 最后一步不移位
第四章 数值的机器运算
4.0 逻辑电路基础 4.1 基本算术运算的实现 4.2 定点加减运算 4.3 带符号数的移位和舍入操作 4.4 定点乘法运算 4.5 定点除法运算 4.6 规格化浮点运算 4.7 十进制加法器 4.9 运算器的基本组成与实例
原码除法运算2——恢复余数法
它直接作减法来试探——
若余数为正,表示够减,该位商上“1”;
若余数为负,表示不够减,该位商上“0”,并要恢复 原来的被除数(或余数)。
[X]补 ÷ [Y]补
C—存商数
[X]补→A, [Y]补→B,0→C
A-B→A
N 1→Cn
A <0? Y 0→Cn A+B→A
此法由于要恢复余数,使除法的步数不固定,控制比较 复杂。因此,原码恢复余数法在计算机中一般很少采用。
为了防止溢出, 必须有|X|<|Y|.
Y
[X]补与 [Y]补同号
N
[X]补 − [Y]补 [Ri]补
[X]补 + [Y]补 [Ri]补
Y
[R]补与 [Y]补同号
N
商‘1’ 2[Ri ]补 − [Y]补 [Ri+1]补
商‘0’ 2[Ri]补 + [Y]补 [Ri+1]补
计算机组成原理之数值机器运算培训教程
计算机组成原理
数值的
机器运算
2009.9
北京理工大学计算机科学技术学院
第4章
计算机组成原理
运算器是计算机进行算术运算和
逻辑运算的主要部件,运算器的逻辑 结构取决于机器的指令系统、数据表 示方法和运算方法等。本章主要讨论 数值数据在计算机中实现算术运算和 逻辑运算的方法,以及运算部件的基 本结构和工作原理。
Ai Bi
2009.9
北京理工大学计算机科学技术学院
4.1 基本算术运算的实现
计算机组成原理
全加器的逻辑表达式为
Si=Ai⊕Bi⊕Ci-1 Ci=AiBi+(Ai⊕Bi)Ci-1 2.串行加法器与并行加法器
在串行加法器中,只有一个全加器, 数据逐位串行送入加法器进行运算。
如果操作数长n位,加法就要分n次进 行,每次只能产生一位和。
2009.9
北京理工大学计算机科学技术学院
4.1 基本算术运算的实现
计算机组成原理
ty
6
4
ห้องสมุดไป่ตู้
2
C16
C12
C8
C4
C1 C0 Ci
2009.9
北京理工大学计算机科学技术学院
4.1 基本算术运算的实现
四位CLA加法器
S4~S1
计算机组成原理
四位BCLA加法器
G1 P1 S4~ S1
∴Ci=Gi+PiCi-1
2009.9
北京理工大学计算机科学技术学院
4.1 基本算术运算的实现
计算机组成原理
把n个全加器串接起来,就可进行两个 n位数的相加。串行进位又称行波进位,每 一级进位直接依赖于前一级的进位,即进 位信号是逐级形成的。
计算理论第4章 图灵机 ppt课件
PPT课件
12
4.1 图灵机模型
定义4-4 对于图灵机M = ( K, Σ, Γ, δ, q0, B, F),定义图灵机接受的语言集 L(M) 为 L(M)={w|w∈Σ*∧ u0 u v q qf(u0∈Σ*∧u∈Σ*∧v∈Σ* ∧q∈K∧qf ∈F ∧q0w├*u0qB├*uqfv)}
2ppt课件类型文法结构产生式形式限制条件0短语结构文法vvphrasestructure上下文有关文法1a212121a21contextsensitive12vcsgavnv上下文无关文法aavnv2contextfreecfg正右线性文法axbcyabcvnn3规文左线性文法abxcyxyvt法3ppt课件overview0型语言图灵机1型语言csl线性界限自动机2型语言cfl下推自动机3型语言正规集有限自动机4ppt课件overview?图灵机所定义的语言类递归可枚举集合?图灵机所计算的整数函数类部分递归函数?以图灵机为模型研究问题的可计算性即确定该问题是可计算的部分可计算的还是不可计算的
PPT课件
20
4.1 图灵机模型
R
PPT课件
21
4.1 图灵机模型
【例4-5】 设计图灵机实现数字从一进制表示到 二进制表示的转换。
这个图灵机的设计可以仿例4-3 ,不同在于每次循 环时,要保留除以2的余数作为当前二进制位的值。 注意这里首先计算出的是二进制的低位值,所以 要将结果不断右移以插入新生成的位,生成的结 果是低位在右端。初始时,整数n用an表示,结束 时,带上是0、1构成的二进制数。
第4章 图灵机
许桂靖 杨 莹
PPT课件
1
Overview
图灵机(Turing Machine,TM),是 计算机的一种简单的数学模型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章 数值的机器运算
16
第4章 数值的机器运算
2.分组并行进位方式 ⑴单级先行进位方式(组内并行、组间串行) 以16位加法器为例,可分为4组,每 组4位。第一小组组内的进位逻辑函数C1、 C2、C3、C4的表达式与前述相同,它们是 同时产生的,实现上述进位逻辑函数的电 路称之为4位先行进位电路CLA,其延迟 时间是2ty。 利用这种4位的CLA电路以及进位产生 /传递电路和求和电路可以构成4位的CLA 加法器。用4个这样的CLA加法器,很容 易构成16位的单级先行进位加法器。 17
第4章 数值的机器运算
29
2.补码减法(续)
“某数的补码表示”与“变补”是两个不 同的概念。一个负数由原码转换成补码时,符 号位是不变的,仅对数值位各位变反,末位加 “1”。而变补则不论这个数的真值是正是负, 一律连同符号位一起变反,末位加“1”。[Y] 补 表示的真值如果是正数,则变补后[-Y] 补 所表 示的真值变为负数,反之亦然。 例1:Y=-0.0110, [Y]原=1.0110, [Y]补=1.1010, [-Y]补=0.0110 例2:Y=0.0110, [Y]原=0.0110, [Y]补=0.0110, [-Y]补=1.1010
第4章 数值的机器运算
21
2.分组并行进位方式(续) 成组先行进位电路BCLA,其延迟时 间是2ty。利用这种4位的BCLA电路以及 进位产生/传递电路和求和电路可以构成4 位的BCLA加法器。16位的两级先行进位 加法器可由4个BCLA加法器和1个CLA电 路组成。
第4章 数值的机器运算
22
16位两级先行进位加法器
第4章 数值的机器运算
24
16位两级先行进位时间图
ty
6 ××× 4* 2 ××× ×××
*
*
*
C16
C12
C8
C4
C1 C0
Ci
图4-7 16位两级先行进位时间图
第4章 数值的机器运算
25
4.2 定点加减运算
定点数的加减运算包括原码、补码 和反码3种带符号数的加减运算,其中补 码加减运算实现起来最方便。
第4章 数值的机器运算
18
16位单级先行进位时间图
ty
8 6 4 2
C16
C12
C8
C4
C1 C0
Ci
图4-5 16位单级先行进位时间图
第4章 数值的机器运算
19
2.分组并行进位方式(续)
⑵多级先行进位方式(组内并行、组间并行) 仍以字长为16位的加法器作为例子,分析 两级先行进位加法器的设计方法。第一小组的 进位输出C4可以变成两个与项相或: C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0 =G1*+P1*C0 其中:G1*=G4+P4G3+P4P3G2+P4P3P2G1 P1*=P4P3P2P1 Gi*称为组进位产生函数 Pi*称为组进位传递函数
5
第4章 数值的机器运算
4.1 基本算术运算的实现
计算机中最基本的算术运算是加法 运算,不论加、减、乘、除运算最终都 可以归结为加法运算。所以在此讨论最 基本的运算部件——加法器,以及并行 加法器的进位问题。
第4章 数值的机器运算
6
4.1.1 加法器
1.全加器 全加器(FA)是最基本的加法单元, 它有三个输入量:操作数Ai和Bi、低位传 来的进位Ci-1,两个输出量:本位和Si、向 高位的进位Ci。 S
串行进位的并行加法器的总延迟时 间与字长成正比,字长越长,总延迟时 间就越长。假定,将一级“与门”、 “或门”的延迟时间定为ty,从上述公式 中可看出,每一级全加器的进位延迟时 间为2ty。在字长为n位的情况下,若不考 虑Gi、Pi的形成时间,从C0→Cn的最长延 迟时间为2nty(设C0为加法器最低位的进 位输入,Cn为加法器最高位的进位输 出)。
第4章 数值的机器运算
4.1.2 进位的产生和传递
并行加法器中的每一个全加器都有 一个从低位送来的进位输入和一个传送给 高位的进位输出。我们将传递进位信号的 逻辑线路连接起来构成的进位网络称为进 位链。每一位的进位表达式为: Ci=AiBi+(Ai⊕Bi)Ci-1 其中:Gi=AiBi为进位产生函数 Pi=Ai⊕Bi为进位传递函数 ∴进位表达式Ci=Gi+PiCi-1
第4章 数值的机器运算
3
本章学习内容 • 4.1 基本算术运算的实现 • 4.2 定点加减运算 • 4.3 带符号数的移位和舍入操作 • 4.4 定点乘法运算 • 4.5 定点除法运算 • 4.6 规格化浮点运算 • 4.7 十进制整数的加法运算 • 4.8 逻辑运算与实现 • 4.9 运算器的基本组成与实例
A8~A5 B8~B5
图4-6 16位两级先行进位加法器
第4章 数值的机器运算
23
2.分组并行进位方式(续) 若不考虑Gi、Pi的形成时间,C0经过 2ty产生第一小组的C1、C2、C3及所有组 进位产生函数Gi*和组进位传递函数Pi*; 再经过2ty,由CLA电路产生C4、C8、C12、 C16;再经过2ty后,才能产生第二、三、 四小组内的C5~C7、C9~C11、C13~C15。 此时加法器的最长进位延迟时间是6ty。
中国计算机学会 “21世纪大学本科计算机专业系列教材”
计算机组成原理
蒋本珊 编著
第4章 数值的机器运算
1
第4章 数值的机器运算
第4章 数值的机器运算
2
运算器是计算机进行算术运算和逻 辑运算的主要部件,运算器的逻辑结构 取决于机器的指令系统、数据表示方法 和运算方法等。本章主要讨论数值数据 在计算机中实现算术运算和逻辑运算的 方法,以及运算部件的基本结构和工作 原理。
32
第4章 数值的机器运算
补码减法示例 例4:A=0.1011,B=-0.0010,求A-B ∵[A]补=0.1011 [B]补=1.1110 [-B]补=0.0010 0.1011 [A]补 + 0.0010 [-B]补 0.1101 [A-B]补 ∴[A-B]补=0.1101 A-B=0.1101
第4章 数值的机器运算
4.2.2 补码加减运算
1.补码加法 两个补码表示的数相加,符号位参 加运算,且两数和的补码等于两数补码 之和,即: [X+Y]补=[X]补+[Y]补
第4章 数值的机器运算
28
2.补码减法 根据补码加法公式可推出: [X-Y]补=[X+(-Y)]补=[X]补+[-Y]补 从补码减法公式可以看出,只要求 得[-Y]补,就可以变减法为加法。不管Y的 真值为正或为负,已知[Y] 补 求[-Y] 补 的方 法是:将[Y]补连同符号位一起求反,末尾 加“1” 。[-Y] 补 被称为[Y] 补 的机器负数, 由[Y] 补 求[-Y] 补 的过程称为对[Y] 补 变补 (求补),表示为 [-Y]补=[[Y]补]变补
第4章 数值的机器运算
12
串行进位的并行加法器
Sn S2 S1
Cn
FA
Cn-1 Bn
…
C2
FA
C1 B2
FA
C0
An
A2
A1
B1
图4-3 串行进位的并行加法器
其中:C1=G1+P1C0 C2=G2+P2C1 ┇ Cn=Gn+PnCn-1
第4章 数值的机器运算
13
4.1.2 进位的产生和传递(续)
┇
第4章 数值的机器运算
15
1.并行进位方式(续) 这种进位方式是快速的,若不考虑 Gi、Pi的形成时间,从C0→Cn的最长延迟 时间仅为2ty,而与字长无关。但是随着 加法器位数的增加,Ci的逻辑表达式会变 得越来越长,输入变量会越来越多,这 会使电路结构变得很复杂,所以完全采 用并行进位是不现实的。
C16
* G4
CLA电路
* P* G3* P3 4 S16~S13 S12~S9 * G2
P2* S8~S5 BCLA C4 加法器
G1*
P* 1 S4~S1
BCLA C12 加法器
BCLA C8 加法器
BCLA 加法器 A4~A1 B4~B1
.
C0
A16~A13 A12~A9 ห้องสมุดไป่ตู้16~B13 B12~B9
第4章 数值的机器运算
4
本章学习要求
• • • • • • • • • • 掌握:定点补码加法和减法运算方法 理解:3种溢出检测方法 理解:补码移位运算和常见的舍入操作方法 了解:串行加法器与并行加法器 理解:进位产生和进位传递 掌握:定点原码、补码乘法运算方法 掌握:定点原码、补码加减交替除法运算方法 理解:浮点加减乘除运算 理解:逻辑运算 了解:运算器的基本结构及浮点协处理器
第4章 数值的机器运算
30
3.补码加减运算规则 ⑴参加运算的两个操作数均用补码表 示; ⑵符号位作为数的一部分参加运算; ⑶若做加法,则两数直接相加,若做 减法,则将被减数与减数的机器负数相加; ⑷运算结果仍用补码表示。
第4章 数值的机器运算
31
补码加法示例 例3:A=0.1011,B=-0.1110,求A+B ∵[A]补=0.1011 [B]补=1.0010 0.1011 [A]补 + 1.0010 [B]补 1.1101 [A+B]补 ∴[A+B]补=1.1101 A+B=-0.0011
i
Ci
FA
Ci-1
图4-1 全加器的逻辑框图
第4章 数值的机器运算
Ai
Bi
7
全加器真值表
Ai Bi Ci-1 Si Ci
0 0 0 0 1 1 1 1