微机原理复习概要

合集下载

微机原理期末复习总结

微机原理期末复习总结

微机原理期末复习总结⼀、基本知识1、微机的三总线就是什么?答:它们就是地址总线、数据总线、控制总线。

2、8086 CPU启动时对RESET要求?8086/8088 CPU复位时有何操作?答:复位信号维⾼电平有效。

8086/8088 要求复位信号⾄少维持4个时钟周期的⾼电平才有效。

复位信号来到后,CPU便结束当前操作,并对处理器标志寄存器,IP,DS,SS,ES 及指令队列清零,⽽将cs设置为FFFFH, 当复位信号变成地电平时,CPU 从FFFF0H 开始执⾏程序3、中断向量就是就是什么?堆栈指针的作⽤就是就是什么?什么就是堆栈?答:中断向量就是中断处理⼦程序的⼊⼝地址,每个中断类型对应⼀个中断向量。

堆栈指针的作⽤就是指⽰栈顶指针的地址,堆栈指以先进后出⽅式⼯作的⼀块存储区域,⽤于保存断点地址、PSW 等重要信息。

4、累加器暂时的就是什么?ALU能完成什么运算?答:累加器的同容就是ALU 每次运⾏结果的暂存储器。

在CPU 中起着存放中间结果的作⽤。

ALU称为算术逻辑部件,它能完成算术运算的加减法及逻辑运算的“与”、“或”、“⽐较”等运算功能。

5、8086 CPU EU、BIU的功能就是什么?答:EU(执⾏部件)的功能就是负责指令的执⾏,将指令译码并利⽤内部的寄存器与ALU对数据进⾏所需的处理BIU(总线接⼝部件)的功能就是负责与存储器、I/O端⼝传送数据。

6、CPU响应可屏蔽中断的条件?答:CPU 承认INTR 中断请求,必须满⾜以下4个条件:1 )⼀条指令执⾏结束。

CPU 在⼀条指令执⾏的最后⼀个时钟周期对请求进⾏检测,当满⾜我们要叙述的4个条件时,本指令结束,即可响应。

2 )CPU 处于开中断状态。

只有在CPU的IF=1 ,即处于开中断时,CPU 才有可能响应可屏蔽中断请求。

3)没有发⽣复位(RESET),保持(HOLD)与⾮屏蔽中断请求(NMI )。

在复位或保持时,CPU 不⼯作,不可能响应中断请求;⽽NM I的优先级⽐INTR⾼, CPU 响应NMI ⽽不响应INTR 。

微机原理复习总结资料

微机原理复习总结资料

重要概念:1、微处理器微处理器:微处理器是一个中央处理器cpu,由算术逻辑部件ALU、累加器和寄存器组、指令指针寄存器IP(程序计数器)、段寄存器、时序和控制逻辑部件、内部总线等构成。

2、微型计算机:微型计算机由微处理器、存储器、输入/输出接口电路和系统总线组成。

微处理器是计算机系统的核心,也称CPU(中央处理器)。

3、微型计算机系统:微型计算机为主体,配上外部输入/输出设备及系统软件就构成了微型计算机系统。

微处理器,微型计算机,微型计算机系统有什么联系与区别?微处理器是微型计算机系统的核心,也称为CPU(中央处理器)。

主要完成:①从存储器中取指令,指令译码;②简单的算术逻辑运算;③在处理器和存储器或者I/O之间传送数据;④程序流向控制等。

微型计算机由微处理器、存储器、输入/输出接口电路和系统总线组成。

以微型计算机为主体,配上外部输入/输出设备及系统软件就构成了微型计算机系统。

4、8086CPU内部结构及各部分功能8086CPU内部由执行单元EU和总线接口单元BIU组成。

主要功能为:执行单元EU负责执行指令。

它由算术逻辑单元(ALU)、通用寄存器组、16 位标志寄存器(FLAGS)、EU 控制电路等组成。

EU 在工作时直接从指令流队列中取指令代码,对其译码后产生完成指令所需要的控制信息。

数据在ALU中进行运算,运算结果的特征保留在标志寄存器FLAGS 中。

总线接口单元BIU负责CPU与存储器和I/O接口之间的信息传送。

它由段寄存器、指令指针寄存器、指令队列、地址加法器以及总线控制逻辑组成。

5、8086CPU寄存器8086CPU内部包含4 组16 位寄存器,分别是通用寄存器组、指针和变址寄存器、段寄存器、指令指针和标志位寄存器。

(1)通用寄存器组包含 4 个16 位通用寄存器AX、BX、CX、DX,用以存放普通数据或地址,也有其特殊用途。

如AX(AL)用于输入输出指令、乘除法指令,BX在间接寻址中作基址寄存器,CX在串操作和循环指令中作计数器,DX用于乘除法指令等。

微机原理期末复习总结

微机原理期末复习总结

SP/EN D7~D0 RD WR A0 . . . ICW1 ICW2 ICW3 ICW4 OCW1 (IMR) OCW2 OCW3 PR IRR
CAS0 CAS1 CAS2 ISR . IR0 . . IR7
地址 译码
CS
INTA INT
INTA INTR
第八章:串行接口8255
为什么要使用8255 串行接口芯片8255
控制字 寄存器
计数器2
3个独立的计数器:
计数初值寄存器
计数过程:
1、写入计数初值,保存在计 数初值寄存器中;
2、将计数初值装入减1计数器 开始计数;
CLK
减1计数器
OUT
输出寄存器 计数器的内部结构
3、减1计数器在CLK脉冲作用 下递减计数,直至为0时输 出OUT信号; 4、输出寄存器跟随减1计数器 变化,用于锁存输出数据。
A12~A0
第六章:接口技术
了解I/O接口电路的存在意义
解决CPU与外设信息交换时的矛盾 理解接口与端口的概念
端口:接口电路中存储单元地址
了解接口电路的三类寄存器
数据寄存器、状态寄存器、控制寄存器
掌握各种I/O传递方式及特点
程序控制下的数据传送——分为:
无条件传送
查询传送
中断传送
直接存储器存取(DMA)
数据总线、地址总线、控制总线 始终周期、总线周期、指令周期 基本时序(T1/T2/T3/T4)
最小组态下的读总线周期
0~N个
T1
CLK
IO/M A16~19
T2
T3
Tw
T4
低为存储器/高为I/O 地址 地址 地址 数据 状 态
A8~15
AD0~7 ALE RD DT/R DEN

微机原理知识点回顾

微机原理知识点回顾

复习要点参考第一章数制与码制1、掌握各种数制之间的相互转换,理解字节、字等概念。

2、掌握二进制数的加减运算、逻辑运算,并结合第三章加减运算指令学习,掌握PSW中状态位的设置原则。

3、掌握有符号数的原码、补码表示方法;并掌握用补码表示的数加、减运算后溢出(OF)的设置原则。

4、掌握BCD数的两种表示方法,并结合第三章BCD数调整指令学习,掌握BCD数运算后结果的调整方法。

5、掌握0~9、A~F、a~f、回车、换行、空格、ESC等字符的Asccll码,并结合第三章逻辑运算指令、比较指令、条件转移指令等指令的学习,掌握大、小写字符之间的相互转换以及0~9、A~F数字与0~9、A~F字符之间的相互转换。

第二章8086 PCU结构与功能1、2.1微处理器的外部结构一小节掌握总线、微机中的系统总线(三总线)以及每类总线所担负的功能;掌握I/O接口、I/O端口以及微机系统中对I/O端口的编址方式等概念;掌握8086 CPU的地址线条数以及寻址能力;掌握8086CPU的数据线条数以及通过数据线能传送的数的范围。

2、掌握微处理器的一般内部结构及其工作原理。

3、掌握8086 CPU的内部结构以及EU、BIU的主要功能。

4、掌握8086的14个寄存器及其功能,为后续8086汇编语言程序设计打下坚实的基础。

4、掌握存储器为什么要分段、怎么分段,以及逻辑地址与物理地址之间的关系。

掌握当前段、段超越前缀等概念。

为后续8086汇编语言程序设计打下基础。

5、掌握8086CPU的存储器地址空间与I/O地址空间,以及IBM—PC/XT机中的I/O地址空间。

为后续存储器接口、I/O接口设计打下基础。

第三章第三章8086CPU指令系统1、掌握机器语言、机器语言程序、汇编语言、汇编语言程序、汇编等概念。

2、掌握8086汇编语言程序中语句的种类及其组成。

3、掌握8086汇编语言程序的语句中常数(立即数)以及算数表达式、属性表达式、PTR 属性临时修改表达式的应用。

微机原理知识点归纳总结

微机原理知识点归纳总结

微机原理知识点归纳总结微机原理是计算机专业的基础课程之一,它是学习计算机硬件和软件原理的入门课程。

本文将对微机原理课程的主要知识点进行归纳总结,希望可以帮助读者更好地理解微机原理,并为日后的学习和工作提供帮助。

一、计算机系统计算机系统是由硬件和软件两部分组成的,硬件是计算机的物理构成,软件是控制硬件工作的程序。

计算机系统的主要组成部分包括中央处理器(CPU)、存储器、输入输出设备(I/O设备)和总线。

1. 中央处理器(CPU)中央处理器是计算机系统的核心部件,它负责执行计算机程序的指令和控制计算机的操作。

中央处理器由运算器和控制器两部分组成,运算器负责执行算术和逻辑运算,控制器负责控制指令的执行顺序和数据的流动。

2. 存储器存储器是计算机系统用来存储数据和程序的设备,它分为主存储器(RAM)和辅助存储器(ROM、硬盘等)。

主存储器用来临时存储程序和数据,辅助存储器用来长期存储程序和数据。

3. 输入输出设备(I/O设备)输入输出设备用来与外部环境进行交互,包括键盘、鼠标、显示器、打印机等。

它们负责将数据输入到计算机系统中或者将计算机系统的输出结果显示或打印出来。

4. 总线总线是计算机系统各个部件之间传输数据和控制信号的通道,它分为地址总线、数据总线和控制总线。

地址总线用来传输地址信息,数据总线用来传输数据,控制总线用来传输控制信号。

二、数据的表示和运算1. 二进制数计算机是以二进制形式进行运算的,因此需要了解二进制数的表示和运算规则。

二进制数由0和1组成,其表示方法和十进制数类似,但是各位上的权值是2的幂次方。

2. 字符编码计算机系统中的字符是使用字符编码进行表示的,常用的字符编码包括ASCII码和Unicode。

ASCII码是美国标准信息交换码,每个字符用一个字节表示;而Unicode是一种全球字符集,包括了几乎所有国家的字符,每个字符用两个字节表示。

3. 整数表示和运算计算机系统中的整数是通过二进制补码形式进行表示和运算的。

微机原理复习知识点总结

微机原理复习知识点总结

微机原理复习知识点总结微机原理是计算机科学与技术中的一门基础课程,主要涵盖了计算机硬件与系统结构、数字逻辑、微型计算机系统、IO接口技术、总线技术、内存管理等内容。

下面将对微机原理的复习知识点进行总结。

1.计算机硬件与系统结构:(1)计算机硬件:主要包括中央处理器(CPU)、输入/输出设备(IO)、存储器(Memory)和总线(Bus)等。

(2)冯诺依曼结构:由冯·诺依曼于1945年提出,包括存储程序控制、存储器、运算器、输入设备和输出设备等五个部分。

(3)指令和数据的存储:指令和数据在计算机内部以二进制形式存储,通过地址进行寻址。

(4)中央处理器:由运算器、控制器和寄存器组成,运算器负责进行各种算术和逻辑运算,控制器负责指令译码和执行控制。

2.数字逻辑:(1)基本逻辑门电路:包括与门、或门、非门、异或门等。

(2)组合逻辑电路:由逻辑门组成,没有时钟信号,输出仅依赖于输入。

(3)时序逻辑电路:由逻辑门和锁存器(触发器)组成,有时钟信号,输出依赖于当前和之前的输入。

(4)逻辑门的代数表达:通过逻辑代数的运算法则,可以将逻辑门的输入和输出关系用布尔代数表示。

3.微型计算机系统:(1)微处理器:又称中央处理器(CPU),是微机系统的核心部件,包括运算器、控制器和寄存器。

(2)存储器:分为主存储器和辅助存储器,主存储器包括RAM和ROM,辅助存储器包括磁盘、光盘等。

(3)输入/输出设备:包括键盘、鼠标、显示器、打印机等,用于与计算机进行信息输入和输出。

(4)中断与异常处理:通过中断机制来响应外部事件,异常处理用于处理非法指令或非法操作。

4.IO接口技术:(1)IO控制方式:分为程序控制和中断控制两种方式,程序控制方式需要CPU主动向IO设备发出查询命令,中断控制方式则是IO设备主动向CPU发出中断请求。

(2)IO接口:用于连接CPU与IO设备之间的接口电路,常见的接口有并行接口和串行接口。

(3)并行接口:包括并行数据总线、控制总线和状态总线,其中并行数据总线用于传输数据,控制总线用于传输控制信号,状态总线用于传输IO设备的状态信息。

微机原理知识点总结

微机原理知识点总结

微机原理知识点总结微机原理是计算机科学中的一个重要分支,它研究计算机的硬件和软件之间的相互关系。

微机原理主要包括计算机系统的硬件组成和工作原理、计算机内存的层次结构、数据的表示和处理、中央处理器的结构和功能、输入输出设备的工作原理等知识点。

下面是对微机原理知识点的总结:一、计算机系统的硬件组成和工作原理1.计算机系统的硬件组成:计算机系统由中央处理器、内存、输入输出设备和外部存储设备等组成。

2.计算机系统的工作原理:计算机按照指令的顺序执行程序,通过执行指令来完成各种运算和处理任务。

二、计算机内存的层次结构1.内存的层次结构:内存按照访问速度和容量大小可以分为高速缓存、主存和辅助存储器等层次。

2.高速缓存的作用:高速缓存用于提高计算机的运行速度,通过存储最常用的数据和指令,减少对主存和外部存储器的访问次数。

3.虚拟内存的概念:虚拟内存是一种通过将部分主存空间与外部存储器交换,以扩大可用内存空间的技术。

三、数据的表示和处理1.计算机中的数据表示:计算机使用二进制来表示和处理数据,不同类型的数据可以用不同的进制和编码方式来表示。

2.数据的表示和转换:数据可以表示为无符号数和带符号数,通过转化器可以在二进制、十进制和十六进制之间进行转换。

3.数据的处理方式:计算机通过算术逻辑单元(ALU)进行数据的加减乘除和逻辑运算。

四、中央处理器的结构和功能1.中央处理器的结构:中央处理器由控制单元、算术逻辑单元和寄存器等组成,控制单元负责指令的执行和控制,算术逻辑单元负责数据的处理,寄存器用于存储数据和指令。

2.中央处理器的功能:中央处理器负责指令的获取、解析和执行,通过执行指令来完成各种运算和处理任务。

五、输入输出设备的工作原理1.输入输出设备的种类:输入输出设备包括键盘、鼠标、显示器、打印机、磁盘驱动器等。

2.输入输出设备的工作原理:输入输出设备通过输入输出接口与计算机系统连接,通过驱动程序来完成数据的输入和输出。

微机原理复习资料

微机原理复习资料

微机原理复习资料一、概述微机原理是计算机科学与技术专业的一门重要课程,它主要介绍了微型计算机的基本组成和工作原理。

本文将针对微机原理的复习资料进行详细介绍,包括微机的基本概念、微处理器的结构与功能、存储器的组成与分类、输入输出设备的原理以及微机系统的总线结构。

二、微机的基本概念1. 微机的定义微机是指以微处理器为核心,配以存储器、输入输出设备等组成的计算机系统。

它具有体积小、价格低廉、功能强大等特点,广泛应用于个人和办公场所。

2. 微机的组成微机由中央处理器(CPU)、存储器、输入输出设备和总线四部分组成。

其中,CPU是微机的核心,负责执行指令和控制计算机的运行;存储器用于存储数据和程序;输入输出设备用于与外部环境进行信息交互;总线用于连接各个部件。

三、微处理器的结构与功能1. 微处理器的结构微处理器由运算器、控制器和寄存器组成。

其中,运算器负责数值计算和逻辑运算;控制器负责指令的解码和执行;寄存器用于存储数据和指令。

2. 微处理器的功能微处理器的主要功能包括指令执行、数据传输、中断处理和时序控制等。

指令执行是微处理器的核心功能,它通过解码指令并执行相应的操作码完成各种运算和逻辑判断。

数据传输是指将数据从一个寄存器或存储器传输到另一个寄存器或存储器。

中断处理是指在微处理器执行程序的过程中,接收到外部设备的中断信号后,暂停当前程序的执行,转而处理中断请求。

时序控制是指微处理器根据时钟信号来控制指令的执行顺序和时序。

四、存储器的组成与分类1. 存储器的组成存储器由存储单元和存储单元组织控制电路组成。

存储单元是存储器的最小存储单位,用于存储二进制数据。

存储单元组织控制电路用于对存储单元进行编址和访问控制。

2. 存储器的分类存储器根据存储介质的不同可以分为半导体存储器和磁性存储器。

半导体存储器包括随机存储器(RAM)和只读存储器(ROM),它们具有读写速度快、功耗低等特点。

磁性存储器包括磁盘、磁带等,它们具有容量大、价格低廉等特点。

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

微机原理1、原码、补码表示范围举例:某机字长8位,采用定点表示法,可表示的纯小数或整数的表示范围是多少?若采用浮点表示法,阶码3位,尾数5位,表示的数值范围是多少?定点小数:-0.1111111 ~ +0.1111111,即-127/128~+127/128定点整数:-1111111.~+1111111.,即-127~+127定点小数的表示范围:-.1111....1 ≤X ≤+.1111 (1)即:-(1-2-n) ≤X≤+(1-2-n)定点整数的表示范围:-1111....1 ≤X ≤+1111. (1)即-(2n-1) ≤X ≤+ (2n-1)机器字长p+m+2位,其中尾数占m+1位,阶码占p+1位浮点数所能表示的数值范围应分成正、负数。

分别表示如下:正数:+2-m•2-(2p-1 )≤X≤+(1-2-m) •2+(2p- 1)负数:-(1-2-m) •2+(2p- 1)≤X≤-2-m•2-(2p-1 )某机字长32位,浮点表示时,阶码占8位,尾数占24位,各包含一个符号位。

问:(1)带符号定点小数的最大表示范围是多少?(2)带符号定点整数的最大表示范围是多少?(3)浮点表示时,最大的正数是多少?(4)浮点表示时,最大的负数是多少?(5)浮点表示时,最小的规格化正数是多少?答案:(1) -1~+(1-2-31)(2) -2+31~+ (2+31-1)(3)(1-2-23)* 2+127(4)- 2-23* 2-128(5) +2-1*2-128③注意事项浮点数基值的选择rm=2、8、16尾数的基值,增大数的表示范围,不降低数的表示精度浮点数的规格化尾数≥1/rm,即尾数小数点后的第一位数是非02、原码表示法将带符号数的符号位数值化(习惯上用“0”表示“+”,用“1”表示“-”),数码位保持不变,即原码表示法。

例如:X=+0.101101 Y=-0.010110则[X]原=0.101101 [Y]原=1.0101103、补码表示法举例:若X=+0.10110010根据定义:[X]补=0.10110010若X=-0.10110010根据定义:[X]补=2+(-0.10110010)=10.00000000-0.10110010=1.01001110求补码的简易方法:正数的补码同原码;负数的补码,保持原码符号位不变(“1”),数码位各位变反,末位加1。

无论正数还是负数,都必须先求原码。

③已知[X]补,求[X]原方法对于正数:[X]原=[X] 补对于负数:[X]原=[[X]补]补例:若[X]补= 1.10110001[X]原=1.01001111④已知[X]补,求[-X]补的方法将[X] 补连同符号位一起,各位变反,末位加1;例:若[X]补= 1.10110001[-X]补=0.01001111⑤已知[X]补,求[X/2]补、[X/4]补的方法将[X] 补连同符号位一起右移1位,左边补1位与符号位相同的数码,则得到[X/2]补;同理,若右移2位,则得到[X/4]补;例:若[X]补= 1.01101111[X/2]补=1.10110111[X/4]补=1.11011011⑥已知[X]补,求[2X]补、[4X]补的方法将[X] 补左移1位,得到[2X]补,右边补“0”;若左移2位,则得到[4X]补。

例:若[X]补= 0.00101101[2X]补=0.01011010[4X]补=0.101101004、反码表示法求负数的反码也有简便方法:即将原码的符号位保持不变,数码位各位变反。

举例:若X=-0.11011001[X]原=1.11011001[X]反=1.001001105、浮点数的原码、补码和反码表示法浮点数由两个定点数组成,阶码是定点整数,尾数是定点小数,其三种编码的具体格式以下面的例子说明。

例1:若X=+0.11011001×2-110,该浮点数在机内采用如下格式:X=-110,+0.11011001[X]原=1110,0.11011001[X]反=1001,0.11011001[X]补=1010,0.11011001例2:若X=-0.10010111×2+110,该浮点数在机内采用如下格式:X=+110,-0.10010111[X]原=0110,1.10010111[X]反=0110,1.01101000[X]补=0110,1.011010016、常用的错误检测码有两类:检错码和纠错码。

奇偶校验码-常用的检错码海明码-常用的纠错码数据校验码实现的原理就是在所传输的信息中加入一些冗余码,使合法数据编码出现某些错误时,就成为非法编码。

这样,就可以通过检测编码的合法性来达到发现错误的目的。

数据校验位的多少与码距紧密相关。

码距的概念是什么呢?即根据任意两个合法码之间至少有几个二进制位不相同而确定的。

仅有一位不同,称其码距为1。

一般来说,码距越大,纠错能力越强,但数据冗余也越大,即编码效率低了。

所以,选择码距要取决于特定系统的参数。

数字系统的设计者必须考虑信息发生差错的概率和该系统能容许的最小差错率等因素。

利用校验码实现对数据信息的校验,目的是提高计算机的可靠性。

检错与纠错的方法很多,这里只介绍常用的三种数据校验方法:奇偶校验、海明校验和循环冗余校验(CRC)。

奇偶校验码是一种开销最小,能发现数据代码中一位出错情况的编码,常用于存储器读写检查,或ASCII字符传送过程中的检查。

它的实现原理是使码距由1增加到2。

构成规则:奇偶校验通常用来检验单个字符的错误。

即发送端在每个字符的最高位之后附加一位奇偶校验位。

这个校验位可为“1”或“0”,以保证整个字符中“1”的个数是奇数(称奇校验)或偶数(称偶校验)。

奇偶校验只能发现一位错或奇数个位错,但不能确定是那一位错,也不能发现偶数个错,更无法识别错误信息的位置。

考虑到一位出错的几率比多位出错的几率高得多,该方案还是有很好的使用价值。

纠错码(码距为3)大、中型计算机在存储器校验时,主要采用海明校验。

海明校验是由R.Hamming于1950年提出的,是目前仍广泛被采用的一种很有效的校验方法。

海明校验实现原理海明校验码以奇偶校验为基础,但校验位不是一位,而是多位。

它实质上就是一种多重奇偶校验码。

它的实现原理是:在数据中加入几个校验位,并把数据的每一个二进制位分配在几个奇偶校验组中,当某一位出错后,就会引起有关的几个校验组的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为自动纠错提供了依据。

7、补码加减法运算方法对于补码加减法运算需要证明如下公式:[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补例1:已知:X=-0.0625,Y=-0.75。

求:X+Y,X-Y解:X=-0.0001 Y=-0.1100[X]原=1.0001 [Y]原=1.1100[X]补=1.1111 [Y]补=1.0100[-Y]补=0.1100[X]补=1.1111 [X]补=1.1111+ [Y]补=1.0100 + [-Y]补=0.1100---------------------- -----------------------[X+Y]补=1.0011 [X-Y] 补=0.1011[X+Y]原=1.1101 [X-Y] 原=0.1011X+Y=-0.1101 X-Y=+0.1011=-0.8125 =+0.6875例2:已知:X=-20,Y=+9。

求:X+Y,X-Y解:X=-10100 Y=+01001[X]原=110100 [Y]原=001001[X]补=101100 [Y]补=001001[-Y]补=110111[X]补=101100 [X]补=101100+ [Y]补=001001 + [-Y]补=110111---------------------- -----------------------[X+Y]补=110101 [X-Y] 补=100011[X+Y]原=101011 [X-Y] 原=111101X+Y=-01011 X-Y=-11101=-11 =-29结论:补码运算能将减法变为加法,是的运算器中只需一个加法器;补码加减法运算时,符号位与数码位一样参加运算,能自然得到结果的正确符号;补码小数的加减法运算以“2”为模,补码整数运算以“2n+1”为模,即符号位向更高位的进位自然丢失,不影响运算结果的正确性。

2、定点加减法运算中的溢出问题“运算溢出”是指运算结果大于机器所能表示的最大正数或小于所能表示的最小负数。

“运算溢出”只对带符号数的运算有效。

下面举例说明什么情况下会产生溢出。

[X]补=0.1010 [X]补=1.0001+ [Y]补=0.1001 + [Y]补=1.0111---------------------- -----------------------[X+Y]补=1.0011 [X+Y] 补=0.1000从上述例子可以看出,两个正数相加,结果为负数;而两个负数相加,结果为正数,显然是错误的,其原因是由于运算产生了溢出;除此之外,正数减负数或负数减正数,也可能产生运算溢出。

溢出是一种错误,计算机在运算过程中必须能发现这种错误,并进行必要的处理,否则将产生严重的后果。

常用的判溢出的方法有以下两种:采用变形补码判溢出;利用符号位进位信号判溢出。

①采用变形补码判溢出“变形补码”是采用2个符号位的补码,记作[X]’补。

上面的两个例子,若采用变形补码运算,结果为:例1:[X]’补=00.1010 例2:[X]’补=11.0001+ [Y]’补=00.1001 + [Y]’补=11.0111------------------------ -----------------------[X+Y]’补=01.0011 [X+Y]’补=10.1000例1中,运算结果的两位符号位为“01”,表示产生了正溢出。

例2中,运算结果的两位符号位为“10”,表示产生了负溢出。

不溢出时,两个符号位应相同,为“00”或“11”。

一、已知X=-0.1000101×2-111Y=+0.0001010×2-100(1)用补码运算求X+Y=?,并判断是否有溢出。

(2)用补码运算求X+Y=?,并判断是否有溢出。

解:(1)对阶X=-0.0001000×2-100(2)运算[X]补=11 100,11.1111000 [X]补=11 100,11.1111000+ [Y]补=11 100,00.0001010 + [-Y]补=11 100,11.1110110---------------------------------------- --------------------------------------------[X+Y]补=11 100,00.0000010 [X-Y]补=11 100,11.1101110(3)结果规格化[X+Y]补=11 100,00.0000010=10 111,00.1000000 溢出[X-Y]补=11 100,11.1101110=11 010,11.0111000X-Y=-0.1001000×2-110、已知X=-7.25,Y=+28.5625(1)将X和Y分辨转换成二进制浮点数(阶码4位,尾数10位,各包含一个符号位;(2)用变形补码求X-Y=?解: X=-111.01=-0.11101×2+011Y=+11100.1001=+0.111001001×2+101[X]原=00 011,11.111010000 [Y]原=00 101,00.111001001[X]补=00 011,11.000110000 [Y]补=00 101,00.111001001[-Y]补=00 101,11.000110111(1)对阶[X]补=00 101,11.110001100[-Y]补=00 101,11.000110111(2)尾数运算11.110001100+ 11.000110111--------------------------10.111000011(3)结果规格化[X-Y]补=00 110,11.0111000011[X-Y]原=00 110,11.1000111101X-Y=-0.1000111101×2+110结论:采用变形补码进行加减运算时,运算结果的两位符号位应相同;若两个符号位为“00”,表示结果是一个正数,反之,若为“11”,表示结果是负数;若两个符号位不同,则表示运算产生了溢出,且左边一位表示结果的正确符号,即若结果的两位符号位为“01”,表示结果的正确符号应为正,即产生了正溢出。

相关文档
最新文档