版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程特点与考察方式工程类课程重视应用不要钻牛角尖授课内容有侧重考查方式闭卷考试卷面成绩60%,平时成绩40%(实验,作业,课堂)综设实验的重要性,对最终成绩的影响第1章计算机基本知识1.1微型计算机组成1.2微型计算机中信息的表示及运算1.3几种数制之间的相互
计算机技术飞速发展计算机应用领域不断扩大早期计算机主要应用于科学计算中,有两个特点:第一,没有很强的实时性要求第二,输入输出计算机的数据,不需要专用的输入设备和专用的输出设备。一般用高级语言编程高级语言是面向用户的,编程容易方便,易学易用。当代计算机在信息处理和过程控制等领域的应用对系统的实时性有很高的要求程序更精练,运行起来更快(用机器语言或汇编语言编程)需要专门的输入设备将有关信息输入计算机,用专门的输出设备输出处理结果或对被控对象实施控制专用的输入输出设备与计算机的连接和编程控制(称为接口)为此,必须对计算机的工作原理有更深入的了解,对计算机的逻辑组成、工作原理、与外界的接口技术以及直接依赖于计算机逻辑结构的机器语言、汇编语言编程方法等需要进一步的学习。1.1微型计算机组成
计算机的发展,和电子技术,特别是微电子技术密切相关的。自1946年世界上第一台电子计算机问世以来,计算机的发展已经历了四代:电子管计算机、晶体管计算机、集成电路计算机和大规模、超大规模集成电路计算机。目前,各国正加紧研制和开发第五代“非冯·诺依曼”计算机和第六代“神经网络”计算机、“量子”计算机。世界上第一台计算机有五个基本部件:输入设备、输出设备、运算器、存储器、控制器、奠定了当代电子数字计算机体系结构的基础
1.1微型计算机组成
微型计算机属于第四代计算机。体积小、功耗低、可靠性高,大规模集成电路技术的不断发展也为微型计算机的产生打下了坚实的物质基础。微型计算机
(MicroComputer)是由微处理器(CPU)、存储器和I/O接口电路组成的计算机。
微处理器(MicroProcessor)是微型计算机的核心芯片,它是将计算机中的运算器和控制器集成在一片硅片上制成的集成电路。也被称为中央处理单元,简称为CPU(CentralProcessingUnit)。微处理器发展极快,几乎每两年微处理器的集成度翻一番,每24年更新换代一次。
第一代——4位或低档8位微处理器指令系统简单,运算能力差,速度慢(平均指令执行时间为1020s)。软件主要使用机器语言及简单的汇编语言编写。
第二代——中高档8位微处理器8位微处理器,具有16位地址总线。指令的平均执行时间为12s。指令系统相对比较完善,已具有典型的计算机体系结构以及中断、存储器直接存取(DMA)功能。已经配有单用户操作系统,可使用汇编语言及BASIC、FORTRAN等高级语言编写程序。
第三代——16位微处理器16位微处理器,具有20位地址总线。有丰富的指令系统、多级中断系统、多处理机系统、段式存储器管理以及硬件乘除法器等。准16位的8088CPU,其指令系统与8086完全兼容,CPU内部结构仍为16位,但外部数据总线是8位的。16位微处理器芯片80286。它具有24位地址总线,并具有多任务系统所必须的任务切换功能、存储器管理功能以及各种保护功能。第四代——32位高档微处理器Intel公司的32位微处理器芯片80386,其地址总线也为32位。80386SX内部结构位32位,外部数据总线为16位,采用80287作为协处理器。80386DX内部结构、外部数据总线皆为32位,采用80387作为协处理器。
第四代——32位高档微处理器Intel公司的32位微处理器芯片80486,其地址总线仍然为32位。它相当于把80386、80387及8KB高速缓冲存储器(Cache)集成在一块芯片上,性能比80386有较大提高。AMD、Cyrix等80486的兼容CPUIntel公司推出的Pentium(奔腾,Intel586)也属于32位CPU。Pentium微处理器数据总线为64位,地址总线为36位,有两条超标量流水线,两个并行执行单元及双高速缓冲存储器,工作频率有50MHz、66MHz、133MHz、和166MHz等。
第五代——64位高档微处理器Intel公司在2005年推出第一款64位CPU,Pentium46XX,高端产品P4EE,随后又发布了64位的CeleronDCPU系列芯片。双核CPU,多核CPU。微型机系统硬件软件微型计算机外围设备系统软件应用软件CPU内存输入/输出接口电路电源和辅助电路1.1微型计算机组成硬件
微型机系统外围设备过程控制I/O通道A/D,D/A转换器开关量等外部设备键盘、鼠标等输入设备显示器、打印机等输出设备软驱、硬盘及磁带等外存储器主机输入输出(I/O)接口电路微处理器(CPU)运算器(算术逻辑运算单元ALU)控制器(控制单元CU)寄存器阵列(RA)内存储器RAM,ROM,EPROMEEPROM,Cash等系统软件软件用户(应用)软件微型计算机系统的组成
基于总线的微型计算机硬件系统目前,计算机仍沿用1940年由冯.诺依曼首先提出的体系结构。其基本设计思想为:①以二进制形式表示指令和数据。②程序和数据事先存放在存储器中,计算机在工作时能够高速地从存储器中取出指令加以执行。③由运算器、控制器、存储器、输入设备和输出设备等五大部件组成计算机硬件系统。总线,各功能部件间传送信息的公共通道。带状的扁平电缆线或印刷电路板上的金属连线。根据所传送信息的内容与作用,可分三类:地址总线AB(AddressBus):在对存储器或I/O端口进行访问时,传送由CPU提供的地址信息,以选中要访问的存储单元或I/O端口,单向总线。
数据总线DB(DataBus):从存储器取指令或读写操作数,对I/O端口进行读写操作时,指令码或数据信息通过数据总线与CPU传送,双向总线。
控制总线CB(ControlBus):各种控制或状态信息通过控制总线在CPU和有关部件之间传送。CB中每根线的传送方向是一定的,CB作为一个整体,用双向表示。
存储器指内存储器(又称为主存或内存)。它是微型计算机的存储和记忆装置,用来存放指令、原始数据、中间结果和最终结果。在计算机内部,程序和数据都以二进制形式表示,8位二进制代码作为一个字节。为了便于对存储器进行访问,存储器通常被划分为许多单元,每个存储单元存放一个字节的二进制信息,每个存储单元分别赋予一个编号,称为地址。
计算机在执行程序时,CPU会自动而连续地从内存储器中取出要执行的指令,并执行指令规定的操作。计算机每完成一条指令,至少有一次为取指令而读内存的操作。内存储器是计算机主机的一部分,具有一定容量且速度较高,CPU可直接用指令对内存储器进行读写。在微型计算机中,通常用半导体存储器作为内存储器。E7H34HA5HF2H68H……4001H4002H4003H4004H4005H……地址指令或数据内容
01101000内存单元的地址和内容
关于存储器的
几个基本概念位(Bit):二进制信息的最小单位(0或1)字节(Byte):由8位二进制数组成,可以存放在一个存储单元中。是字的基本组成单位。字(Word):计算机中作为一个整体来处理和运算的一组二进制数,是字节的整数倍。通常它与计算机内部的寄存器、算术逻辑单元、数据总线宽度相一致。字长:每个字的位数称为计算机的,是计算机的重要性能指标。内存容量:内存中存储单元的总数。通常以字节为单位,1024(210)字节记作1KB,220字节记作1MB,230字节记作1GB。内存单元地址:为了能识别不同的单元,每个单元都赋予一个编号,称之为内存单元地址。各内存单元的地址与单元中存放的内容是两个完全不同的概念,不可混淆。
内存的操作
CPU对内存的操作有两种:读或写。读操作是CPU将内存单元的内容读入CPU内部,而写操作是CPU将其内部信息送到内存单元保存起来。写操作的结果改变了被写内存单元的内容,是破坏性的,而读操作是非破坏性的,即该内存单元的内容在信息被读出之后仍保持原信息不变。来自CPU的读信号90H地址译码器10101101B00011010B10111010B00100010B内容地址00H01HFFHAB10010000B10111010BDB(a)内存读操作过程示意图10101101B00011010B10111010B00100010B内容90H来自CPU的写信号地址译码器地址00H01HFFHAB10010000B00000000BDB(b)内存写操作过程示意图内存的分类按工作方式,内存可分为两大类:随机读写存储器RAM(RandomAccessMemory)和只读存储器ROM(ReadOnlyMemory)。随机读写存储器可被CPU随机地读写,它用于存放将要被CPU执行的用户程序、数据以及部分系统程序。断电后,其中存放的所有信息将丢失。只读存储器中的信息只能被CPU读取,而不能由CPU任意地写入。断电后,其中的信息不会丢失。它用于存放永久性的程序和数据。如系统引导程序、监控程序、操作系统中的基本输入/输出管理程序(BIOS)等。I/O接口与输入输出设备
I/O接口是微型计算机与输入输出设备之间信息交换的桥梁。程序、数据及现场信息要通过输入设备输入给计算机。计算机的处理结果要通过输出设备输出,以便用户使用。常用的输入设备有:键盘、鼠标、数字化仪、扫描仪、A/D转换器等。常用的输出设备有显示器、打印机、绘图仪、D/A转换器等。
外设的种类多,速度低,处理的信息多样,与微机工作的逻辑时序也可能不一致。为此,而需要设计一个I/O接口作为微型机与外设之间的桥梁。I/O接口也称为I/O适配器,不同的外设必须通过不同的I/O适配卡(板)才能与微机相连。所以,I/O接口是微型计算机应用系统的重要组成部件。一个微机应用系统的研制和开发,实际上是I/O接口的研制和开发。因此,I/O接口技术是本课程要重点讨论的内容之一.
微型计算机软件系统
软件:为了管理、维护计算机以及为完成用户的某种特定任务而编写的各种程序的总和。计算机的工作就是运行程序,通过逐条地从存储器(内存)中取出程序中的指令并执行指令规定的操作而实现某种特定的功能。
微型计算机的软件包括系统软件和用户(应用)软件。
系统软件:指不需要用户干预的,为其它程序的开发、调试以及运行等建立一个良好环境的程序。主要包括操作系统OS(OperatingSystem)和系统应用程序。操作系统用于提供人机接口和管理、调度计算机的所有硬件与软件资源。
操作系统还包括用于执行I/O操作的I/O驱动程序,操作系统还包括用于管理存放在外存中大量数据的文件管理程序,系统应用程序很多,如各种高级语言的编译程序、汇编程序、诊断和调试程序,文字处理程序,服务性工具程序,数据库管理程序等。用户软件就是用户为解决各种实际问题而编写的各种程序。常用的编程语言:机器语言程序,计算机能够理解和直接执行,其指令用二进制代码表示和存储的。汇编语言程序,是用助记符语言表示的程序,需要经过“汇编程序”转换为机器语言程序后才能执行。二者指令一一对应,都是面向机器。高级语言是不依赖于具体机型只面向过程的程序设计语言,由它所编写的高级语言程序,需经过编译程序或解释程序的编译或解释生成机器语言程序后才能执行。因此,不论程序是用什么语言编写,都必须首先将其转换为计算机能直接识别和执行的机器语言程序,然后才能由CPU逐条读取并执行。
微型计算机的工作过程
汇编语言编程汇编装入机器语言程序
内存单元地址机器语言程序
汇编语言程序
指令功能说明0000H0001H1011000100000110MOVA,06H双字节指令。将数字6送累加器A0002H0003H0000100000000101ADDA,05H双字节指令。将数字5与累加器A中的内容相加,结果存放在累加器A中。0004H11111110HLT停机指令
某模型机上完成“6+5”操作所需的机器语言程序和汇编语言程序假设该机器语言程序从内存中地址为0000H单元开始存放。
微机的工作过程就是不断地从内存中取出指令并执行指令的过程。取指阶段,按PC(ProgramCounter),取指到IR,执行指令阶段,操作码字段译码,并发出执行该指令所需要的各种微操作控制信号,CPU执行指令所规定的具体操作。一条指令执行完毕后,转入下一条指令的取指阶段。这样周而复始地循环,直到遇到暂停指令时结束。
对于所有的机器指令,取指阶段都是由一系列相同的操作组成的,所用的时间都是相同的。而执行指令阶段由不同的事件顺序组成,它取决于被执行指令的类型。指令通常由操作码(OperationCode)和操作数(Operand)两部分组成。操作码表示该指令完成的操作,而操作数表示参加操作的数本身或操作数所在的地址。指令根据其所含内容的不同而有单字节指令、双字节指令以及多字节指令等。
取第一条指令的操作过程示意图CPU的发展更大的缓存、更高的频率、超级流水线、分支预测、乱序执行超线程技术多核技术低功耗单片机简介单片机即单片机微型计算机,是将计算机主机(CPU、内存和I/O接口)集成在一小块硅片上的微型机。单片机开发系统有单片单板机和仿真器。实现单片机应用系统的硬、软件开发。单片机为工业测控而设计,又称微控制器。具有三高优势(集成度高、可靠性高、性价比高)。主要应用于工业检测与控制、计算机外设、智能仪器仪表、通讯设备、家用电器等。特别适合于嵌入式微型机应用系统。几个重要的数字逻辑电路编码器译码器计数器微机自动工作的条件程序指令顺序存放自动跟踪指令执行1、地址译码器2、指令译码器小结指令的执行过程
(1)取指令程序计数器PC中的内容通过地址总线输出读内存指令到CPU指令寄存器中将PC的内容递增,为取下一条指令做好准备(2)指令译码(3)执行指令微机基本结构微机结构组成连接方式CPU结构管脚特点1、多功能;2、分时复用内部结构1、控制;2、运算;3、寄存器;4、地址程序计数器堆栈定义1、定义;2、管理;3、堆栈形式1.2.1二进制数的表示和运算1.2.2BCD码的表示及运算1.2.3
十六进制数的表示和运算1.2.4
带符号数的表示及运算1.2.5字符的编码表示1.2微型计算机中信息的表示及运算1.2.1二进制数的表示和运算
十进制数表示的特点是:①逢十进一;②使用10个数字符号(09)的不同组合来表示;③以后缀D或d表示十进制数(Decimal),但该后缀可以省略任何一个十进制数可表示为:m位小数,n位整数,Di为第i位上的数符(09)。1.
二进制数表示的特点是:①逢二进一;②使用2个数字符号(0,1)的不同组合来表示;③以后缀B或b表示二进制数(Binary)。任何一个二进制数可表示为:m位小数,n位整数,Bi为第i位上的数符(0或1)。例:11010010B=
2.二进制数的运算
(1)
算术运算加:0+0=00+1=11+0=11+1=0(进1)
减: 0-0=01-1=01-0=10-1=1(借位)
乘:00=001=010=011=1除:二进制除法是乘法的逆运算。例A=11110000B,B=00110101B,求解
(2)
逻辑运算
逻辑“与“运算(AND).00=001=010=011=1
逻辑“或”运算(OR)00=001=110=111=1
逻辑“非”运算(NOT)
逻辑“异或”运算(XOR)
例A=11110101B,B=00110000B,求解1.2.2BCD码的表示及运算(1)BCD码的表示二进制编码的十进制数十进制数的每一位(0~9)分别用4位二进制码表示,也称二-十进制(Binary-CodedDecimal)。最常用的是8421BCD码,从00001111这16种编码中选择前10个即00001001分别代表十进制数码09,这种编码从高位到低位每位的权值分别是8、4、2、1。BCD码有两种形式,即压缩型BCD码和非压缩型BCD码。
1)压缩型BCD码
压缩型BCD码用一个字节表示两位十进制数。例如,10000110B表示十进制数86。
2)非压缩型BCD码
非压缩型BCD码用一个字节表示一位十进制数。高4位总是0000,低4位用00001001表示09。例如,0000100000000110B表示十进制数86。表8421BCD码部分编码表十进制数压缩型BCD码非压缩型BCD码12391011192021000000010000001000000011000010010001000000010001000110010010000000100001000000010000001000000011
0000100100000001000000000000000100000001
000000010000100100000010000000000000001000000001例
十进制数与BCD数相互转换。①将十进制数69表示为压缩型BCD码:
01101001B(69H)表示为非压缩型BCD码:0000011000001001B(0609H)②将BCD码10001001.01101001B表示为十进制数:
89.69
(2)BCD码的加、减运算例:BCD码按二进制加法:
1000+0101=11011001+0111=10000错误原因解决方法两位BCD码相加时,对二进制加法运算结果修正的规则:①结果大于9,则该位加6修正。②结果向高位有进位(结果大于或等于16),则该位加6修正。
例:用BCD码计算88+69。
1000100088的BCD码+)0110100169的BCD码
11110001结果错误。二进制加法运算结果采用“加6修正”,得BCD码加法运算结果。修正后结果000101010111(157).两位BCD码相减时,对二进制减法运算结果修正的规则:相减有借位,则该位需要减6修正。两个BCD数进行运算时,首先按二进制数进行运算,然后用相应的调整指令进行调整,从而得到正确的BCD码结果。
例:用BCD码计算88-69。
1000100088的BCD码-)0110100169的BCD码
00011111结果错误。二进制减法运算结果采用“减6修正”,得BCD码减法运算结果。修正后结果00011001(19).1.十六进制数表示特点是:①逢十六进一;②使用16个数字符号(0~9,A,B,C,D,E,F)的不同组合来表示,其中AF依次表示1015;③以后缀H或h表示十六进制数(Hexadecimal)。1.2.3十六进制数的表示和运算任何一个十六进制数可表示为:m位小数,n位整数,Hi为第i位上的数符(0~9,A,B,C,D,E,F)。例:
0E5AD.BFH=十进制
二进制
BCD码
16进制
数之间
的关系十进制二进制BCD码16进制0000000000100010001120010001023001100113401000100450101010156011001106701110111781000100089100110019101010
A111011
B121100
C131101
D141110
E151111
F2.16进制数的加减运算
加:1+9=2+A=3+8=A+5=E+C=
7+9=9+9=F+1=FF+1=
减: 12-5=2B-12=D4-6B=58-E=
AB-37=17-9=10-2=1.2.4带符号二进制数的表示及运算
1.机器数与真值无符号数与带符号数如何表示带符号的二进制数?一个字节型二进制数,D7位为符号位,D6D0位为数值位。符号位中,用“0”表示正,“1”表示负,而数值位表示该数的数值大小。机器数:一个数在计算机中的表示。真值:机器数所表示的数值。D7D6……D1D02.机器数的表示方法
1)原码
最高位为符号位(正数为0,负数为1),其余数字位表示数的绝对值。例:-1(8位原码10000001,16位原码1000000000000001)+100(8位原码01100100,16位原码0000000001100100)
例如,当机器字长n=8时,
[+0]原=00000000B [-0]原=10000000B[+8]原=00001000B [-8]原=10001000B[+127]原=01111111B [-127]原=11111111B
当机器字长n=16时,[+0]原=0000000000000000B[+8]原=0000000000001000B[-0]原=1000000000000000B[-8]原=1000000000001000B[+32767]原=0111111111111111B[-32767]原=1111111111111111B原码表示数的范围是-(2n-1-1)(2n-1-1)
。8位二进制原码表示数的范围为-127+127,16位二进制原码表示数的范围为-32767+32767;“0”的原码有两种表示法:00000000表示+0,10000000表示-0。
原码表示法简单直观,且与真值的转换很方便,算术运算电路很复杂。因此,计算机中通常使用补码进行加减运算。2)反码:
正数的反码与其原码相同。例如,当机器字长n=8时:
[+0]反=[+0]原=00000000B[+127]反=[+127]原=01111111B当机器字长n=16时:
[+8]反=[+8]原=0000000000001000B[+127]反=[+127]原=0000000001111111B
负数的反码是在原码基础上,符号位不变(1),数值位按位取反。例如,当机器字长n=8时:
[-0]反=11111111B [-127]反=10000000B
反码表示数的范围与原码相同
。
“0”的反码有两种表示法:00000000表示+0,11111111表示-0。3)补码如机器字长为n,则补码定义如下:正数的补码与其原码、反码相同。例如,当机器字长n=8时:[+8]补=[+8]反=[+8]原=00001000B [+127]补=[+127]反=[+127]原=01111111B当机器字长n=16时:
[+8]补=[+8]反=[+8]原=0000000000001000B [+127]补=[+127]反=[+127]原
=0000000001111111B
负数的补码(三种方法)例如,当机器字长n=8时:[-8]原=10001000B [-127]原=11111111B[-8]反=11110111B [-127]反=10000000B[-8]补=28-8=11111000B [-127]补=28-127=10000001B当机器字长n=16时:
[-8]补=216-8=1111111111111000B [-127]补=216-127=1111111110000001B可以看出,补码表示数的范围是-2n-1(2n-1-1)
。8位二进制补码表示数的范围为-128+127,16位二进制补码表示数的范围为-32768+32767。
8位二进制数的原码、反码和补码表带符号数原码反码补码000000000000000100000010…01111110011111111000000010000001…
111111011111111011111111012…
126127128129…
253254255+0+1+2…
+126+127-0-1
…
-125-126-127+0+1+2…
+126+127-127-126…-2-1-0+0+1+2…
+126+127-128-127…-3-2-1
二进制数
无符号十进制数3.补码的加减运算
1)补码加法
在计算机中,带符号数一律用补码表示,运算结果也是补码。运算特点是:符号位和数值位一起参加运算,并且自动获得结果(包括符号位与数值位)。
补码加法的运算规则为:即:两数补码的和等于两数和的补码。
例
已知
[+51]补=00110011B,[+66]补=01000010B,
[-51]补=11001101B,[-66]补=10111110B
求[+66]补+[+51]补=?[+66]补+[-51]补=?[-66]补+[-51]补=?解
[+66]补+[+51]补=[(+66)+(+55)]补=01110101B其真值为+117,计算结果正确。[+66]补+[−51]补=[(+66)+(−55)]补=0000111B其真值为+15,计算结果正确。二进制(补码)加法十进制加法
01000010[+66]补
+66+)11001101[−51]补
+)−5100001111[+15]补
+151自动丢失[−66]补+[−51]补=10001011B=[(−66)+(−55)]补其真值为−117,计算结果正确。
二进制(补码)加法十进制加法
10111110[-66]补
-66+)11001101[−51]补
+)−5110001011[-117]补
-1171自动丢失结论:不论两数是正数还是负数,只要直接用它们的补码相加,当结果不超出补码所表示的范围时,计算结果便是正确的补码形式。但当计算结果超出补码表示范围时,结果错误,这种情况称为溢出。[+66]补+[+66]补=01000010+01000010=10000100
42H+42H=84H
([-124]补)
2)补码减法
补码减法的运算规则:
如何由[y]补求[-y]补[y]补连同符号位在内的所有位全部变反,再加1
例
已知[+51]补=00110011B,[+66]补=01000010B[−51]补=11001101B,[−66]补=10111110B求
[+66]补−[+51]补=?[−66]补−
[−51]补=?解
[+66]补−[+51]补=[+66]补+[−51]补
[−66]补−[−51]补=[−66]补+[+51]补
二进制(补码)减法[+66]补−[+51]补十进制减法
01000010[+66]补
01000010[+66]补
+66+)11001101[−51]补
-)00110011[+51]补
-)+5100001111[+15]补
00001111[+15]补
+151自动丢失
二进制(补码)减法[−66]补−[−51]补十进制减法
10111110[-66]补
10111110[-66]补
-66+)00110011[+51]补
-)11001101[-51]补
-)-5111110001[-15]补
11110001[-15]补-15
结论:无论两数是正数还是负数,上述补码减法的规则是一样的。当结果不超出补码所表示的范围时,计算结果便是正确的补码形式。同样,由最高位向更高位的进位(借位)不影响运算结果的正确性。但当计算结果溢出时,结果错误。[+66]补-[-66]补=01000010–10111110=1000010042H-BEH=84H([-124]补)
计算机中带符号数用补码表示时有如下优点:①可以将减法运算变为加法运算,因此可使用同一个运算器实现加法和减法运算,简化了电路。
②无符号数和带符号数的加法运算可以用同一个加法器实现,结果都是正确的。例如:
无符号数带符号数
11100001 225 [−31]补+)00001101 +)13 +)[+13]补
11101110 238[−18]补若两操作数为无符号数,计算结果真值为238,结果正确;若两操作数为补码,计算结果也为补码形式,真值为–18,结果也正确。
4.溢出及其判断方法
1)进位与溢出进位,指运算结果的最高位产生的进位(加法)或借位(减法),可判断无符号数运算结果是否超出了计算机所能表示的无符号数的范围(02n−1−1)。溢出,是指带符号数的补码运算结果超出了补码所能表示的范围。(−2n−1+2n−1−1)。2)溢出的判断方法若最高位的进位状态用CF表示,当其有进位时,CF=1,否则,CF=0;若次高位的进位状态用CP表示,当其有进位时,CP=1,否则,CP=0。通过该两位进位状态的异或结果判断是否溢出的。若OF=1,结果溢出;若OF=0,结果未溢出。
例
设有两个机器数x=01000100B,y=01001000B,将二者作加法运算,试问:①若为无符号数,结果是否超出其表示范围?②若为带符号补码数,计算结果是否溢出?
无符号数带符号数
0100010068[+68]补+)01001000+)72+)[+72]补
10001100140[+140]补CP=1CF=0
①无符号数,结果未超出(0255)。②带符号数,OF=1结果溢出;错误。解
例
设有两个操作数x=01000100B,y=01001000B,将二者作减法运算,试问:①若为无符号数,结果是否超出其表示范围?②若为带符号补码数,计算结果是否溢出?
无符号数带符号数
0100010068[+68]补-)01001000-)72-)[+72]补
11111100[+4]补[+4]补CP=1CF=1解
①无符号数,结果超出(0255)。②带符号数,OF=0结果未溢出;正确。①无符号数,结果超出(0255)。②带符号数,OF=0,结果未溢出。正确。
例
设x=11101110B,y=11001000B,将二者作加法运算,①若为无符号数,结果是否超出其表示范围?②若为带符号补码数,计算结果是否溢出?解
无符号数带符号数
11101110238[-18]补+)11001000+)200+)[-56]补
10110110438[-74]补CP=1CF=11自动丢失
例
设x=11101110B,y=11001000B,将这两个操作数送运算器作减法运算,试问:①若为无符号数,结果是否超出其表示范围?②若为带符号补码数,计算结果是否溢出?解
无符号数带符号数
11101110238[-18]补-)11001000-)200-)[-56]补
0010011038[38]补CP=0CF=0①无符号数,结果未超出(0255)。②带符号数,OF=0,结果未溢出。正确。
5.带符号数的符号扩展扩展字长无符号数扩展字长:高位补0例:
(8)00001000B ,0000000000001000B带符号数(补码)扩展字长:高位补符号位例:(-8)11111000B,1111111111111000B(8)00001000B ,0000000000001000B1.2.5字符编码所谓字符,是指数字、字母以及其他一些符号的总称。现代计算机不仅处理数值领域的问题,还要处理大量的非数值领域的问题。各种字符也必须用二进制数码,计算机才能进行识别与处理。在微机、通信设备和仪器仪表中广泛使用的是ASCII码(AmericanStandardCodeforInformationInterchange)——美国标准信息交换码。
1.ASCII码ASCII码用一个字节表示一个字符,采用7位二进制代码对字符进行编码,最高位一般用做校验位。7位ASCII码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 股骨骨折术后康复指导教程培训指南
- 婚房布置设计全案规划
- 老年多动症药物治疗方案
- 眼结膜炎护理处理流程
- 皇帝皇后杯字创意设计
- 感统游戏设计要点解析
- 旧市场改造设计项目规划
- 产科妊娠糖尿病孕期管理方案
- 居室设计说明
- 分割土地评估方案范本
- 选矿厂技术管理
- (新教材)2026年春期部编人教版二年级下册语文 第八单元核心素养教案
- 浙江广电集团招聘笔试题库2026
- 2025年中保协保险原理知识测试题库及答案
- 2026年国家电网招聘之人力资源类考试题库300道及参考答案(模拟题)
- 医疗器械法规培训大纲
- 三年(2023-2025)内蒙古中考物理真题分类汇编专题02 声现象、光现象、透镜及其应用(原卷版)
- 2025年广西壮族自治区(89所)辅导员考试笔试真题汇编附答案
- 《公务员制度讲座》期末终结性考试(占总成绩50%)-国开(ZJ)-参考资料
- 少先队安全教育知识测试题及答案集
- SY-T 6257-2024 蒸汽吞吐注采工艺方案设计
评论
0/150
提交评论