第6章 计算机的运算方法
《计算机组成原理》唐朔飞第二版_笔记
《计算机组成原理》唐朔飞第⼆版_笔记第1章概论1,计算机系统的软硬件概念1)硬件:计算机的实体部分,它由看得见摸得着的各种电⼦元器件,各类光、电、机设备的实物组成,如主机、外部设备等。
2)软件:由⼈们事先编制的具有各类特殊功能的程序组成,分为系统软件和应⽤软件。
①系统软件⼜称为系统程序,主要⽤来管理整个计算机系统,监视服务,使系统资源得到合理的调度,⾼效运⾏。
它包括:标准程序库、语⾔处理程序(编译程序)、操作系统、、服务程序(如诊断、调试、连接程序)、数据库管理系统、⽹络软件等。
②应⽤软件⼜称应⽤程序,它是⽤户根据任务需要所编制的各种程序,如科学计算程序、数据处理程序、过程控制程序、实物管理程序。
2、计算机系统的层次结构:1)硬联逻辑级:第零级是硬联逻辑级,这是计算机的内核,由门,触发器等逻辑电路组成。
2)微程序级:第⼀级是微程序级。
这级的机器语⾔是微指令集,程序员⽤微指令编写的微程序,⼀般是直接由硬件执⾏的。
3)传统机器级:第⼆级是传统机器级,这级的机器语⾔是该机的指令集,程序员⽤机器指令编写的程序可以由微程序进⾏解释。
操作4)系统级:第三级是操作系统级,从操作系统的基本功能来看,⼀⽅⾯它要直接管理传统机器中的软硬件资源,另⼀⽅⾯它⼜是传统机器的延伸。
5)汇编语⾔级:第四级是汇编语⾔级,这级的机器语⾔是汇编语⾔,完成汇编语⾔翻译的程序叫做汇编程序。
6)⾼级语⾔级:第五级是⾼级语⾔级,这级的机器语⾔就是各种⾼级语⾔,通常⽤编译程序来完成⾼级语⾔翻译的⼯作。
7)应⽤语⾔级:第六级是应⽤语⾔级,这⼀级是为了使计算机满⾜某种⽤途⽽专门设计的,因此这⼀级语⾔就是各种⾯向问题的应⽤语⾔。
把计算机系统按功能分为多级层次结构,就是有利于正确理解计算机系统的⼯作过程,明确软件,硬件在计算机系统中的地位和作⽤。
3、计算机组成和计算机体系结构1)计算机体系结构:是指那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性。
计算机组成与原理的重点与难点
1.定点加法、减法运算。 采用二进制补码加法 加法: [X+Y]补=[X]补+[Y]补 (mod 2) 减法: [X-Y]补=[X]补+[-Y]补 (mod 2) 2.定点乘法。同原码乘法一样:符号位: 单独 处理(异或产生) 数值位:求两数绝对值之商 3.定点二进制除法公式: ·两种运算方法:① 恢复余数法:运算步骤不 确定,控制复杂,不适合计算机运算。 ② 加减交替法:不恢复余数,运算步骤确定,适 合计算机操作。 法则:余数为正:商1,下一步作减法; 余数为负:商0,下一步作加法。
5.定点运算器基本结构。运算器包括ALU、阵列 乘除器件、寄存器、多路开关、三态缓冲器、 数据总线等逻辑部件。运算器的设计,主要是 围绕着ALU和寄存器同数据总线之间如何传送操 作数和运算结果而进行的。 运算器的三种结构形式: ·单总线结构的运算器:这种结构的主要缺点 是操作速度较慢,但控制电路比较简单。 ·双总线结构的运算器:两操作数可分别通过 两条总线送入ALU,操作时间较单总线结构的运 算器快。 ·三总线结构的运算器:三总线结构的运算器的 特点是操作时间快
1.程序中断方式。 · 中断:计算机在执行正常程序的过程中, 出现某些异常事件或某种请求时,处理机 暂停执行当前程序,转而执行更紧急的程 序,并在执行结束后,自动恢复执行原先 程序的过程。 特点: ·硬件结构较查询方式复杂些,服务 开销时间较大; ·主程序与设备并行运行,CPU效率较高; ·具有实时响应的能力。
5.操作数的寻址 (1) 立即寻址 (2) 直接寻址 (3) 间接寻址 (4) 寄存器寻址 (5) 寄存的间接寻址 (6) 偏移寻址(1)相对寻址(2)基址 寻址(3)变址寻址 (7) 堆栈寻址
*难
点
要求掌握设计指令格式的方法, 学会根据指令系统的要求,确定 指令字中各字段的位数及其含义。 特别是在实际机器中,指令字长 不一定等于存储字长,因此应格 外注意各种寻址方法和地址格式 的运用。
6计算机组成原理第6章流水线原理
结果
6.1 先行控制技术
• 先行控制(look-ahead)技术最早在IBM公司研制的 STRETCH机器中采用。目前,许多处理机中都已经采 用了这种技术,包括超流水处理机和超标量处理机等。
6.4 线性流水线性能分析
衡量流水线的主要指标有吞吐率,加速比和效率。
6.4.1 吞吐率TP
吞吐率(TP ── ThroughPut)指流水线在单位时间内执行的任务数, 可以用输入任务数或输出任务数表示。
TP n Tk
其中k表示流水线划分的段数。
当满足 ti 条t 件时,有 Tk (n k 1) t。
第6章 流水线原理及其 §1 重叠方式
通常提高指令执行速度的途径有如下三种: 1. 提高处理机的工作主频。 2. 采用更好的算法和设计更好的功能部件。 3. 多条指令并行执行,称为指令级并行技术。
• 可以从两个方面来开发处理机内部的并行性:
– 空间并行性:即在一个处理机内设置多个独 立的操作部件,并让这些操作部件并行工作, 这种处理机称为多操作部件处理机或超标量 处理机;
• 超长指令字技术VLIW:指让一条指令包含多个独立的操 作字段,并且分别控制多个功能部件并行工作的技术。
一.重叠解释方式
1.一条指令的几个过程段
1)取指令:根据PC(指令计数器)从M(存储器)取 出指令送到IR(指令寄存器)
2)译码分析:译出指令的操作性质,准备好所需数 据
3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件)
第六章 计算机的运算方法
• 8. 设机器数字长为8位(含1位符号位),若机器数 为81H(十六进制),当它分别代表原码,补码,反码 时,等价的十进制整数分别为( ),( )和( • ). • 9. 采用浮点表示时,若尾数为规格化形式,则浮 点数的表示范围取决于( )的位数,精度取决 于( • )的位数,( )确定确的. • A 只有补码能表示-1 • B 只有原码不能表示-1 • C 三种机器数均不能表示-1
• 5. 将一个十进制数X=-8192表示成补码时, 至少采用( )二进制代码表示. • A 13位 • B 14位 • C 15位
• 6. [X]补=1.000……0,代表的真值是( ) • A -0 • B -1 • C +1 • 7. 设X为整数,[X]反=1.1111对应的真值是( ) • A -15 • B -1 • C -0
• 4. 在整数定点机中,机器数为补码,字长8位(含2 位符号位),则所能表示的十进制数范围为( ) 至( ),前者的补码形式为( ),后者的补码 形式为( ) • 5. 某整数定点机,字长8位(含1位符号位),当机器 数分别采用原码,补码,反码及无符号数时,其对 应的真值范围分别为 ( )( )( )( )(均用十进制数表示).
• 设[X]原=1,X1,X2,X3,X4,当满足 下列______时,X>-1/2成立 • A. X1必须为0,X2~X4至少有一个为 0 • B. X1必须为0 ,x2~x4任意 • C. X1必须为1,X2~X4任意
• 设 [X]补=1,X1,X2,X3,X4,当满足 下列______时,X>-1/2成立 • A.X1必须为1,X2~X4至少有一个为1 • B.X1必须为1,x2~x4任意 • C.X1必须为0,X2~X4至少有一个为 1
计算机组成原理第6章习题指导
16
16
解: 因为 x = + 11 = 0.1011,y = + 7 = 0.0111
16
16
所以[x]补′ = 00.1011,[ y]补′ = 00.0111
则 [x]补′ + [ y]补′ = 00 .1011
+ 00 .0111 第一位符号位→ 01 .0010
溢出
此时,符号位为“01”,表示溢出,又因第 1 位符号位为“0”,表示结果的真正符号,故“01”表
个负数。
例 6.2 已知:[y]补 求:[-y]补。
解:设 [y]补 = y0.y1y2…yn
第一种情况 [y]补 = 0.y1y2…yn
(6.1)
所以
y = 0.y1y2…yn
故
-y = -0.y1y2…yn
则 [-y]补 = 1.y1y2…yn+2-n
(6.2)
比较式(6.1)和式(6.2),发现由[y]补连同符号位在内每位取反,末位加 1 即可得[-y]补。
-52 -104 -13
右移两位
1,0000110
-6
移位前
1,1100110
-26
左移一位 补
左移两位 码
右移一位
1,1001100 1,0011000 1,1110011
-52 -104 -13
右移两位
1,1111001
-7
移位前
1,1100101
-21,1001011 1,0010111 1,1110010
5
计算机组成原理第 6 章习题
器中一位符号的值要同时送到加法器的两位符号位的输入端。
例 6.16 已知:x = - 0.1110,y = - 0.1101 求:[x·y]原 解: 因为 x = - 0.1110
计算机组成与系统作业
第1章计算机系统概述作业1、什么是计算机系统?说明计算机系统的层次结构。
2、什么是主机?什么是CPU?什么是存储器?简述它们的功能。
3、计算机的硬件指标有哪些?4、解释英文缩写的含义:MIPS、CPI、FLOPS。
5、什么是机器字长、指令字长、存储字长?第3章系统总线1、解释下列概念(1)总线(2)系统总线(3)通信总线(4)总线主设备(5)总线从设备(6)总线仲裁2、什么是总线通信控制?为什么需要总线通信控制?3、什么是总线标准?为什么要制定总线标准?4、在高档PC机中,流行使用三总线(系统总线、PCI总线、ISA总线)结构。
说明这三种总线的连接关系,并举例说明每组总线上所连接的部件。
5、某总线在一个总线周期中可并行传送8个字节数据。
假设一个总线周期等于一个时钟周期,总线的时钟周期频率为66MHz,求总线的带宽。
第4章存储器1、试比较主存、辅存、缓存、控存、虚存。
2、试比较RAM和ROM。
3、试比较静态RAM和动态RAM。
4、名词解释:存取周期、存取时间、存储容量。
5、什么是存储密度?什么是数据传输率?6、存储器的主要功能有哪些?如何衡量存储器的性能?为什么要把存储系统分成若干不同的层次?主要有哪些层次?每层由什么存储介质实现?7、什么是刷新?刷新有几种方式?简要说明之。
8、简述主存的读/写过程。
9、提高存储器的速度可采取哪些措施?简要说明之。
10、设有16个固定磁头的磁盘,每磁道存储容量为62500B,磁盘驱动器转速为2400rpm,试求最大数据传输率。
11、什么是“程序访问的局部性”?存储系统中哪一级采用了程序访问的局部性原理?12、试比较Cache管理中各种地址映像的方法。
13、在Cache管理中,当新的主存块需要调入Cache时,有几种替换算法?各有何特点?哪种算法平均命中率高?14、设CPU共有16根地址线、8根数据线,并用MREQ作为访存控制信号(低电平有效),用WR作为读/写控制信号(高电平为读,低电平为写)。
计算机基础实训教程--第6章资料课件
6.6 打印工作表
• 当制作好工作表后,通常要做的下一步工 作就是把它打印出来。利用Excel 2007提供 的设置页面、设置打印区域、打印预览等 打印功能,可以对制作好的工作表进行打 印设置,美化打印的效果。本节将介绍打 印工作表的相关操作。
• 打印预览 • 打印输出
6.6.1 打印预览
• Excel 2007提供打印预览功能,用户可以通 过该功能查看打印后的实际效果,如页面 设置、分页符效果等。若不满意可以及时 调整,避免打印后不能使用而造成浪费。
• Excel 2007的工作界面 • 工作薄与工作表 • 工作表的基本操作 • 单元格的基本操作
6.1.1 Excel 2007的工作界面
• Excel 2007的工作界面主要由Office按钮、标 题栏、快速访问工具栏、功能区、编辑栏、 工作表格区、滚动条和状态栏等元素组成。
6.1.2 工作薄与工作表
• 公式的语法和运算符 • 运算符的优先级 • 公式的输入与引用
6.3.1 公式的语法
• 在Excel 2007中,公式具有以下基本特性: • 所有的公式都以等号开始。 • 输入公式后,在单元格中只显示该公式的
计算结果。 • 选定一个含有公式的单元格,该公式将出
现在Excel 2007的编辑栏中。
• 单击Office按钮,在弹出的菜单中选择【打 印】|【打印】命令,即可打开【打印内容 】对话框,如图6-74所示。在该对话框中, 可以选择要使用的打印机还可以设置打印 范围、打印内容等选项。设置完成后,在 【打印内容】对话框中单击【确定】按钮 即可打印工作表。
习题
1. 在【学生成绩统计】表中将所有学生的“ 语文”成绩按照从高到低顺序排列,如果“ 语文”成绩相同,那么按照“总成绩”, 从高到低排列。
第六章计算机的运算方法
是第6章计算机的运算方法1下列数中最小的数为A. (101001)二B. (52)八C. (2B)十六2.下列数中最大的数为A. (10010101)二B. (227)八C. (96)十六3.设寄存器位数为8位,机器数采用补码形式(含1位符号位)。
对应于十进制数-27,寄存器内容为A. 27HB. 9BHC. E5H4.对真值0表示形式唯一的机器数是A.原码B.补码和移码C.反码D.以上都不对5下列表达式中,正确的运算结果为A (10101)二* (2)十= (20202)二B (10101)三* (2)十= (20202)三C (10101)二* (3)十= (30303)三6 在整数定点机中,下述说法正确的是A.原码和反码不能表示-1,补码可以表示-1B.三种机器数均可表示-1C.三种机器数均可表示-1且三种机器数的表示范围相同7.在小数定点机中,下述说法正确的是A.只有补码能表示-1B.只有原码不能表示-1C.三种机器数均不能表示-18. [x]补= 1.000…0,它代表的真值是.A -0 B. -1 C. +19.设x为整数,[x]反=1,1111,对应的真值是A. -15B. -1C. -010.设x为真值,x*为其绝对值,则等式[ -x * ]补=[-x]补A.成立B.不成立11.设x为真值,x*为其绝对值,满足[ -x * ]补=[-x]补的条件是A. x任意B. x为正数C. x为负数12.在整数定点机中,机器数采用补码,双符号位,若它的十六进制表示为COH,则它对应的真值是A. -1B. +3 C -6413.十进制数56的十六进制表示为(负数用补码表示)。
A. D8B. D9 C 56 D 3814.十六进制数28的十进制表示为(负数用补码表示)。
A. -26B. 24 C 40 D -2715. 1 KB = 字节。
A. 210B. 22016.下列属于有权码。
A. 8421码B.格雷码C. ASCII码17. (24.6)八= ( )十。
第6章中央处理器
北京理工大学计算机学院
6.1 中央处理器的功能和组成
计算机组成原理
(1)程序计数器
程序计数器用来存放正在执行的指令 地址或接着要执行的下条指令地址。
对于顺序执行的情况,PC的内容应不 断地增量(加“1”),以控制指令的顺序 执行。
在遇到需要改变程序执行顺序的情况
时,将转移的目标地址送往PC,即可实现 程序的转移。在有些情况下除需要改变PC 的内容外,还需要保留PC过去的内容,以 便返回时使用。
工作电压指的是CPU正常工作所需的电 压。
8.地址总线宽度
地址总线宽度决定了CPU可以访问的最 大的物理地址空间,简单地说就是CPU到底 能够使用多大容量的主存。例如,Pentium 有 32 位 地 址 线 , 可 寻 址 的 最 大 容 量 为 232 = 4096MB ( 4GB ) , Itantium 有 44 位 地 址 线 , 可寻址的最大容量为244=16TB。
对指令流的控制: 指令流出的控制 指令分析与执行的控制 指令流向的控制
北京理工大学计算机学院
6.1 中央处理器的功能和组成
计算机组成原理
对数据流的控制主要应包括对数据的 流入与流出的控制;对数据变换、加工等 操作的控制。
对于冯·诺依曼结构的计算机而言, 数据流是根据指令流的操作而形成的,也 就是说数据流是由指令流来驱动的。
计算机组成原理
早 期 , CPU 的 内 频 就 等 于 外 频 。 例 如 : 80486DX-33 的 内 频 是 33MHz , 它 的 外 频 也 是 33MHz。也就是说,80486DX-33以33MHz的速度 在内部进行运算,也同样以33MHz的速度与外界 沟通。目前,CPU的内频越来越高,相比之下主 存的速度还很缓慢,如果外频设计得跟内频同步, 则主存都将无法跟上CPU的速度。所以现在外频 跟内频不再只是一比一的同步关系,从而出现了 所谓的内部倍频技术,导致了“倍频”的出现。内频、 外频和倍频三者之间的关系是:
唐朔飞《计算机组成原理》(第2版)配套题库-章节题库-计算机的运算方法【圣才出品】
第6章计算机的运算方法一、选择题1.unsigned short x=65530;unsigned int y=x;得到y的机器数为()。
[2012年统考]A.00007FFAHB.0000FFFAHC.FFFF7FFAHD.FFFF FFFAH【答案】B【解析】本题主要考查考生的逆向思维过程。
怎么快速地将65530转换成十六进制,考生应该记住对于16位无符号整数的最大值为65535(216-1),其十六进制为FFFFH,那么就可以很轻松地得到65530的十六进制为FFFAH(F-5=A)。
无符号短整型转换成无符号整型只需在高位补0即可。
所以,最终得到y的机器数为y=0000FFFAH。
2.一条C语言程序在一台32位机器上运行。
程序中定义了3个变量x、y和z,其中x和z是int型,y为short型。
当x=127,y=-9时,执行赋值语句z=x+y后,x、y和z 的值分别是()。
[2009年统考]A.x=0000007FH,y=FFF9H,z=00000076HB.x=0000007FH,y=FFF9H,z=FFFF0076HC.X=0000007FH,y=FFF7H,z=FFFF0076HD.x=0000007FH,y=FFF7H,z=00000076H【答案】D【解析】①在计算机中,机器数默认使用补码表示。
②符号位扩展问题:所有扩展位使用符号位填充,即正数用0填充,负数用l填充。
如1001扩充成8位,可以写成lllll001;0111扩充成8位,可以写成00000111。
③强制类型转换:如果一个运算符两边的运算数类型不同,先要将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算。
对于x:x为int型,说明x占32位的存储空间。
127换成二进制为00000000000000000000000001111111,对应的十六进制为0000007FH,故X的值为0000007FH。
对于y:y为short型,说明y占16位的存储空间。
计算机组成原理第6章_4运算方法
(3) 左规
尾数左移一位,阶码减 1,直到数符和第一数位不同为止
上例
左规后
[x+y]补 = 00, 11; 11. 1001
[x+y]补 = 00, 10; 11. 0010 ∴ x + y = (– 0.1110)×210
(4) 右规
当 尾数溢出( >1)时,需 右规 即尾数出现 01. ×× …×或 10. ×× … ×时 尾数右移一位,阶码加 1
例 6.28
解:
8 8 求 x–y(除阶符、数符外,阶码取 3 位,尾数取 6 位)
5 7 x = (– —)×2-5 y = (—) ×2-4
x = (– 0.101000)×2-101
[x]补 = 11, 011; 11. 011000
y = ( 0.111000)×2-100
[y]补 = 11, 100; 00. 111000
① 对阶
[Δj]补 = [jx]补 – [jy]补 = 11, 011 + 00, 100 11, 111
阶差为 –1 ∴ Sx 1, jx+ 1
∴ [x]补' = 11, 100; 11. 101100
② 尾数求和
[Sx]补´ = 11. 101100 + [–Sy]补 = 11. 001000 110. 110100
③ 右规
右规后
[x – y]补 = 11, 100; 10. 110100 [x – y]补 = 11, 101; 11. 011010 ∴ x – y = (–0.100110)×2-11
19 = (– —)×2-3 32
5. 溢出判断
设机器数为补码,尾数为 规格化形式,并假设阶符取 2 位,阶码的数值部分取 7 位,数符取2 位,尾数取 n 位, 则该 补码 在数轴上的表示为
计算机组成原理第六章作业_计算机的运算方法1
计组第一次作业 计算机的运算方法1 题目:6.9 当十六进制9BH 和FFH 分别表示为原码、补码、反码、移码和无符号数时,所对应的十进制数各为多少(设机器数采用1位符号)? 答:十六进制9BH 转化成二进制为:10011011,若表示为原码时所对应的十进制数为:-27; 若表示为补码时所对应的十进制数为:-101; 若表示为反码时所对应的十进制数为:-100; 若表示为移码时所对应的十进制数为:101; 若表示为无符号数时所对应的十进制数为:155。
十六进制FFH 转化成二进制为:11111111, 若表示为原码时所对应的十进制数为:-127; 若表示为补码时所对应的十进制数为:-1; 若表示为反码时所对应的十进制数为:-0; 若表示为移码时所对应的十进制数为:1; 若表示为无符号数时所对应的十进制数为:255。
6.10在整数定点机中,设机器数采用1位符号位,写出±0的原码、补码和反码和移码,得出什么结论?答:+0: 原][x = 0,0000000;补][x = 0,0000000;反][x = 0,0000000;移][x = 1,0000000;-0: 原][x = 1,0000000;补][x = 0,0000000;反][x = 1,1111111;移][x = 1,0000000;结论:1.对于正数,原码 = 补码 = 反码 = 移码; 2.[+ 0]原 ≠ [- 0]原,[+ 0]反 ≠ [- 0]反, [+ 0]补 = [- 0]补, [+ 0]移 = [- 0]移;3.对于负数,符号位为 1,其数值部分:原码除符号位外每位取反末位加1→补码,原码除符号位外每位取反→反码,补码与移码只差一个符号位。
6.12 设浮点数格式为:阶码5位(含1位阶符),尾数11位(含1位数符)。
写出12851、 —102427、7.375、—86.5所对应的机器数。
要求如下: (1)阶码和尾码均为原码。
计算机组成原理复习
WE
A1
A0
•••
A9
1
CS1
第4章 存储器
*
字扩展(增加存储字的数量)
存储器与 CPU 的连接
MDR
MAR
CPU
主 存
读
数据总线
地址总线
写
第4章 存储器
*
主存和 CPU 的联系
存储器与 CPU 的连接
地址线的连接 数据线的连接 读/写线的连接 片选线的连接 合理选用芯片 其他 时序、负载
总线控制
主要包括两部件:判优控制
01
主设备(模块):对总线有 控制权
02
从设备(模块):响应从主设备发来的总线命令
03
总线判优控制 分布式 集中式 计数器定时查询 独立请求方式 链式查询 第3章 系统总线
*
总线控制
通信控制
目的解决通信双方协调配合问题 总线通信的四种方式
同步、异步结合
通信双方由 统一时标 控制数据传送 采用 应答方式 ,没有公共时钟标准
周期挪用
*
真值与机器数
第6章 计算机的运算方法
*
真值 X=-0.11111 机器数 原码 X=1.11111 补码 X=1.00001 反码 X=1.00000 移码 X=0.00001 转换
第4章 存储器
字块2m-1
字块2c-r+1
字块2c-r + 1
字块2c-r
字块2c-r -
字块1
字块0
…
…
…
字块 3
标记
字块 1
标记
字块 2c-1
标记
字块 2
标记
字块 0
标记
字块 2c-2
计算机组成原理alu-2
采用带进位(C 的移位 采用带进位 y)的移位
• 为了避免算术左移时最高数位丢 ,可采用 为了避免算术左移时最高数位丢1, 带进位(C 的移位 带进位 y)的移位
– 符号位移至 y,最高数位就可避免移出。 符号位移至C 最高数位就可避免移出。
左移可以由右移位实现
循环右移两位 a7 a6 a5 a4 a3 a2 a1 a0 右移两位 左移8-2位 a1 a0 a7 a6 a5 a4 a3 a2
• 负数:补码 负数:
– 分析任意负数的补码:当对其由低位向高位找到第一个 分析任意负数的补码: 左边的各位( “1”时,在此“1”左边的各位(高位)均与对应的反码 时 在此“ 左边的各位 高位) 相同,而在此“ 右边的各位 低位,包括此“ 在内 右边的各位( 在内) 相同,而在此“1”右边的各位(低位,包括此“1”在内) 均与对应的原码相同。 均与对应的原码相同。
对于正数,三种机器数移位后符号位不变,如果左移时最高数位丢1 对于正数,三种机器数移位后符号位不变,如果左移时最高数位丢1, 结果“出错” 如果右移时最低数位丢1 影响精度。 结果“出错”;如果右移时最低数位丢1,影响精度。
例题(Page.235) 例题
• • • • (2)A=-26=(-11010)2 ) 原码移位前 原码移位前 1 原码左移一位: 原码左移一位:-52 1 原码右移一位: 原码右移一位:-13 1
• 右移时空位出现在高位,则添补的代码应与反码相同,即添1 ; • 左移时空位出现在低位,即添0 。
不同码制机器数移位后的空位添补规则
码 正数 负数
制
添补代码 0 0 左移添0 左移添0 右移添1 右移添1 1
原码、补码、 原码、补码、反码
原码 补码 反 码
第六章计算机的运算方法(含答案)
第六章运算方法1 下列数中最小的数为——。
A.(101001)2 B (52)8 C (2B)162.下列数中最大的数为。
A.()2 B.(227)d C.(96)163.设寄存器位数为8位,机器数采用补码形式(含1位符号位),对应于十进制数(-27),寄存器内容为一——。
A.27H B.9BH C.E5K4.对真值0表示形式唯一的机器数是——oA.原码B.补码和移码 C 反码 D 以上都不对}5.6 在整数定点机中,下述正确的说法是A.原码和反码不能表示—1,补码可以表示—1B.三种机器数均可表示—1c.三种机器数均可表示—1,且三种机器数的表示范围相同7在小数定点机中,下述说法正确的是——。
A.只有补码能表示—1B.只有原码不能表示—1c.三种机器数均不能表示—18.某机字长8位.采用形式(其中1位为符号位)则机器数所能表示的范围:A.一127—127 D.一128,十128 C 一128一十1279、用n+1位字长表示定点数(其中1位为符号位),它所能表示的整数范围是能表示的小数范围是。
A、阶码取4位(台阶符1位),尾数取12位(合数符1位) B.阶码取5位(台阶符1位),尾数取11位(合数符1位) c.阶码取8位(含阶符1位),尾数取8位(合数符1位)【70在下述有关不恢复余数法何时需恢复余数的说法中,——是正确的A最后一次余数为正时,要恢复B.最后一次余数为负时,要恢复C.最后一次余数为。
时,要恢复D.任何时候都不恢复余数71.在定点机中执行算术运其时会产生溢出,其原因是——。
:A.主存容量不够B.运算结果无法表示c.操作数地址过大D.以上都对72.在浮点机中,下列说法是正确的。
A.尾数的第一数位为1时,即为规格化形式B、尾数的第一数值与数符不同时,即为规格化形2c.不同的机器数有不同的规格化形式D尾数的第一数值为。
时,即为规格化形式73.在浮点机中,判断原码规格化形式的原则是一A.尾数的符号位与第一数位不同B.尾数的第一数位为I,数符任意*c.尾数的符号伦与第一数位相同D阶符与数符不同74在浮点机中,判断补码规格化形式的原则是--A尾数的第一数值为l,数符任意B.尾数的符号位与第一数值相同c.尾数的符号位与第一数值不同D.阶符与数符不同75.7677.运算器的主要功能是进行{A.算术运其c.算术逻辑运算78.运算器由许多部件组成,其核心部分是A数据总线B逻辑运算c.累加寄存器D初等函数运算79.定点运算器用来进行——。
计算机组成原理第六章答案
第6章 计算机的运算方法2. 已知X=1a2a3a4a5a (ai 为0或1),讨论下列几种情况时ai 各取何值。
(1)21X > (2)81X ≥ (3)161X 41>≥ 解: (1)若要21X >,只要a1=1,a2~a6不全为0即可。
(2)若要81X ≥,只要a1~a3不全为0即可。
(3)若要161X 41>≥,只要a1=0,a2可任取0或1; 当a2=0时,若a3=0,则必须a4=1,且a5、a6不全为0;若a3=1,则a4~a6可任取0或1;!当a2=1时, a3~a6均取0。
3. 设x 为整数,[x]补=1,x1x2x3x4x5,若要求 x < -16,试问 x1~x5 应取何值 解:若要x < -16,需 x1=0,x2~x5 任意。
(注:负数绝对值大的补码码值反而小。
)4. 设机器数字长为8位(含1位符号位在内),写出对应下列各真值的原码、补码和反码。
-13/64,29/128,100,-87 解:真值与不同机器码对应关系如下:真值-13/64 29/128 100 -87 。
二进制 1100100 -1010111 原码1010 1101 0110 0100 1101 0111;补码 1101 0110 0100 反码11010110 0100`5. 已知[x]补,求[x]原和x 。
[x1]补=; [x2]补=; [x3]补=; [x4]补=;[x5]补=1,0101; [x6]补=1,1100; [x7]补=0,0111; [x8]补=1,0000; 解:[x]补与[x]原、x 的对应关系如下:[x]补!1,01011,11000,0111 1,0000 [x]原无1,1011,1,01000,0111 无 x-1-1011-100,0,0111-100006.设机器数字长为8位(含1位符号位在内),分整数和小数两种情况讨论真值x 为何值时,[x]补=[x]原成立。
大学计算机基础第6章
程序由两局部组成:说明局部和 执行局部。
说明局部主要包括程序名、参数 〔常量、变量〕及其参数类型的 说明;
执行局部是程序的主体,完成具 体的计算和处理任务。
printf("circle_area=%f", circle_area);
}
主要内容
计算机程序与 程序设计
程序设计语言
程序设计过程 及方法
算法基础
❖ 面向对象语言将客观事物看作具有属性和行为的对象,通过抽象找 出同类对象的共同属性和行为,形成类。通过类的继承与多态可以 很方便地实现代码重用,从而大大提高了程序的复用能力和程序开 发效率。面向对象的语言有C++、Java、Visual Basic等。
编译与解释
❖ 用高级语言编写的程序称为源程序,计算机不能直接识别和执行源程 序。在执行源程序前需要通过翻译成机器语言形式的目标程序,这种 “翻译〞通常有两种方式,即编译方式和解释方式。
高级程序设计语言的特征
表达式
❖ 表达式是程序中进展计算并取值的根本单位,它由常量、变量、函 数调用和运算符组成。通常表达式由假设干个运算符把一些运算对 象连接在一起。
❖ 例如,圆半径r,求圆面积的C语句如下:
s=PI*r*r;
其中,PI*r*r就是一个表达式,r和s都是变量,PI是符号常量。=是 赋值运算符。
按功能将该任务分解成4 个子任务,即 ① 输入子任务; ② 计算平均成绩子任务; ③ 降序排序子任务; ④ 输出子任务。
高级程序设计语言的特征
对象的作用域
❖ 对象的作用域是指变量使用的有效范围,它与定义对象的位置和过 程的构造有关。
例如
在C语言程序中,定义在函数内的变量称为局部变量,它的使 用范围只局限于定义它的函数体内,定义在函数外的变量称为 全局变量,它的使用范围是从定义该变量的地方开始生效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
∴ [+ 0]原 ≠ [ 0]原
原码的特点:简单、直观
但是用原码作加法时,会出现如下问题:
要求 加法 加法 加法 加法 数1 正 正 负 负 数2 正 负 正 负 实际操作 加 减 结果符号 正 可正可负
减
加
可正可负
负
能否 只作加法 ?
找到一个与负数等价的正数 来代替这个负数 就可使 减 加
3. 补码表示法
(3) 补码定义
整数
0,x 2n > x ≥ 0 0 > x ≥ 2n(mod 2n+1)
n 为整数的位数
[x]补 =
x 为真值
2n+1 + x
如
x = +1010
x = 1011000
[x]补 = 0,1010
用 逗号 将符号位 和数值部分隔开
[x]补 = 27+1 +( 1011000 ) = 100000000 1011000 1,0101000
n 为小数的位数
x = + 0.1101 [x]反 = 0.1101
x = 0.1010 [x]反 = (2 2-4) 0.1010 = 1.1111 0.1010 = 1.0101
用 小数点 将符号位 和数值部分隔开
(2) 举例
例6.8 已知 [x]反 = 0,1110 求 x 解: 由定义得 x = + 1110
错
大
x = –21
x = +31 x = –31
–10101
+11111 –11111
1,01011
0,11111 1,00001
大 正确
错
大
x+2
5
+10101 + 100000 = 110101 10101 + 100000 = 001011
+11111 + 100000 = 111111 11111 + 100000 = 000001
x [x]补 = 2+ x
1>x≥ 0 0 > x ≥ 1(mod 2)
[ 1]补 = 2 + x = 10.0000 1.0000 = 1.0000
4. 反码表示法
(1) 定义
整数 0,x 2n > x ≥ 0 0 ≥ x > 2n(mod 2n+1 1)
[x]反 =
x 为真值
( 2n+1 – 1) + x
一个负数加上 “模” 即得该负数的补数 一个正数和一个负数互为补数时 它们绝对值之和即为 模 数 • 计数器(模 16) 1011
1011 – 1011 0000
记作 1011 ≡ + 0101
同理 011 ≡ + 101 0.1001 ≡ + 1.0111
0000 ? 1011 + 0101 10000
自然去掉
可见 1011 可用 + 0101 代替
(mod 24) (mod 23) (mod 2)
(2) 正数的补数即为其本身
两个互为补数的数 1011 ≡ 分别加上模 + 10000 + 0101 ≡ 结果仍互为补数
4
+ 0101(mod2 ) (mod2 + 10000 + 10101 ∴ + 0101 ≡ + 0101 (mod24) 丢掉 可见 + 0101 + 0101 ? 1011 ? 0 ,0101 + 0101 1011 ? 1 ,0101 24+1 – 1011 = 100000 (mod24+1) 1011 用 逗号 将符号位 1,0101 和数值部分隔开
机器数
符号数字化的数
+ 0.1011
0 1011
小数点的位置
– 0.1011
+ 1100 – 1100
1 1011
小数点的位置
0 1100
小数点的位置
1 1100
小数点的位置
2. 原码表示法
(1) 定义
整数
0,x
2n x
2n > x ≥ 0
0 ≥ x > 2n
[x]原 =
x 为真值
如 x = +1110
+ 11110 + 11111 …
…
…
111111 000000 000001 000010
011110 011111 …
011111 100000 100001 100010
111110 111111
31 32 33 34
62 63 …
…
(4) 移码的特点
当 x = 0 时 [+0]移 = 25 + 0 = 1,00000 [ 0]移 = 25 0 = 1,00000 ∴ [+0]移 = [ 0]移
1>x≥0 0≥x> 1
1–x
[x]原 = 1 ( 0.1101) = 1 . 1101 [x]原 = 0 . 1000000 用 小数点 将符号 位和数值部分隔开
x = + 0.1000000 x= 0.1000000
[x]原 = 1 ( 0.1000000) = 1 . 1000000
(2) 举例
当 n = 5 时 最小的真值为 25 = 100000
[ 100000]移 = 25 100000 = 000000 可见,最小真值的移码为全 0 用移码表示浮点数的阶码 能方便地判断浮点数的阶码大小
6.2 数的定点表示和浮点表示
小数点按约定方式标出 一、定点表示
Sf S1S2 … Sn
数 数值部分 符 小数点位置
0 1 2 127 128 129
253 254 255
+0 +1 +2 +127 -0 -1
-125 -126 -127
+0 +1 +2 +127 -128 -127
-3 -2 -1
+0 +1 +2 +127 -127 -126
-2 -1 -0
… …
… …
… …
… …
5. 移码表示法
补码表示很难直接判断其真值大小 如 十进制 x = +21 二进制 +10101 补码 0,10101
补码与移码只差一个符号位
(3) 真值、补码和移码的对照表
真值 x ( n=5 ) -100000 - 11111 - 11110
[x]补
100000 100001 100010 …
[x]移
000000 000001 000010
[x] 移对应的 十进制整数
0 1 2 …
- 00001 ± 00000 + 00001 + 00010
(1) 补的概念 • 时钟 6 +9 15 可见 3 可用 + 9 代替 减法 加法 - 12 3 称 + 9 是 3 以 12 为模的 补数 6 -3 3
记作 同理 3 ≡ + 9 (mod 12) 4 ≡ + 8 (mod 12) 5 ≡ + 7 (mod 12) 时钟以 12为模
逆时针
顺时针
结论
和数值部分隔开
(4) 求补码的快捷方式
设 x = 1010 时
则[x]补 = 24+1 1010 = 100000 1010 = 1,0110
又[x]原 = 1,1010
= 11111 + 1 1010 = 11111 + 1 1010 10101 + 1 = 1,0110
当真值为 负 时,补码 可用 原码除符号位外 每位取反,末位加 1 求得
小数
x [x]补 =
x 为真值 如 x = + 0.1110 [x]补 = 0.1110 x = 0.1100000
1>x ≥0 0 > x ≥ 1(mod 2)
2+x
[x]补 = 2 + ( 0.1100000 ) = 10.0000000 0.1100000 1.0100000 用 小数点 将符号位
对于整数,当其分别代表无符号数、原码、补码和 反码时,对应的真值范围各为多少?
二进制代码
无符号数 对应的真值
原码对应 的真值
补码对应 的真值
反码对应 的真值
00000000 00000001 00000010 01111111 10000000 10000001
11111101 11111110 11111111 … …
大
正确
(1) 移码定义 [x]移 = 2n + x(2n>x ≥ 2n)
x 为真值,n 为 整数的位数
移码在数轴上的表示
0 2
n
2
n+1
–1 [x]移码
–2
n
0
2 –1
n
真值
如
x = 10100
[x]移 = 25 + 10100 = 1,10100 x = –10100 [x]移 = 25 – 10100 = 0,01100
真值
[x]补
[x]原
0,1000110 1,1000110 0.1110 1.1110 0.0000 1.0000
不能表示
x = +70 = 1000110 0, 1000110 x = 70 = 1000110 1, 0111010 x = 0.1110 0.1110 x = 0.1110 1.0010 x = 0.0000 [+ 0]补 = [ 0]补 0.0000 x = 0.0000 0.0000 x = 1.0000 1.0000 由小数补码定义