计算机中的信息表示_第1页
计算机中的信息表示_第2页
计算机中的信息表示_第3页
计算机中的信息表示_第4页
计算机中的信息表示_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习目标:掌握常用的进位计数制及其相互转换方法。掌握原码、补码的表示方法及其相互转换,了解反码表示方法。掌握定点数、浮点数表示方法,能根据给定的格式定出典型值。学会查用ASCII表,了解汉字编码的基础知识。掌握常用寻址方式,I/O编址方法;理解指令格式的基本概念,了解常见的指令功能分类。第2章计算机中的信息表示§2.1数值型数据的表示方法§2.1.1进位计数制一.计算机中常用的进位制:名称进位制基本数码基数二进制逢二进一0、12八进制逢八进一0-78十进制逢十进一0-910十六进制逢十六进一0-9、A、B、C、D、E、F16二-十进制逢十进一0-9科学计数法:

(S)10=Xn10n+Xn-110n-1+…+X0100+X-110-1+X-210-2+…+X-m10-m其他进制数的表示方法:(101.01)2=1*22+0*21+1*20+0*2-1+1*2-2=(5.25)10(703.64)8=7*82+0*81+3*80+6*8-1+4*8-=(451.8125)10(BC3.89)16=11*162+12*161+3*160+8*16-1+9*16-2=(3011.535)1010n是Xn的位权实际上,这是其他进制转换成十进制的一种方法。二--十进制又称为8421码与常规十进制一样,每位二—十进制数只允许选用0-9中的一个,逢十进一,用二进制编码表示十进制数,这种编码又称为BCD码。例:(137)10=(000100110111)BCD即用4位二进制数表示1位十进制数,从高位起这4位的权依次是23、22、21、20,即8,4,2,1。所以这种编码又称为“8421码”。二、各种进位制之间的相互转换:1.十——二进制数之间的转换(1)十—二进制的整数转换减权定位法:逐位分离

除基取余法:除2取余,余数倒排列。(见教材P27页)分别进行整数和小数的转换减权定位法:

例:(116)10=(1110100)2减权比较Xi位权116-64=5216452-32=2013220-16=41164<8084-4=0140<2020<101(2)十—二进制的小数转换减权定位法:(与整数转换所用不着减权定位法相似,但转换后得到的二进制小数可能是一个“不尽”的小数,其规定的字长或实际需要的精度来决定。)(0.625)10=(0.101…)2减权比较Xi位权0.635-0.5=0.13510.50.135<0.2500.250.135-0.125=0.01010.125…乘基取整法例:(0.625)10=(0.101)2见板书(3)二—十进制的整、小数转换二—十进制的整、小数转换可见前面介绍的类似“科学计数法”,即按权相加法另外两种方法:二—十进制的整数转换:逐次乘基相加法二—十进制的小数转换:逐次除基相加法见教材P290-F(15)与二进制的转换0123011011456710010111011189A(10)B(11)1000100110101011C(12)D(13)E(14)F(15)11001101111011112.二——八进制数之间的转换三位二进制转换一位八进制3.二——十六进制数之间的转换四位二进制数转换一位十六进制§2.1.2带符号数的表示真值——一个数的本身,包括正负号。机器数——在计算机中,常约定数的某一位表示符号,用0表示正号,用1表示负号,这种连同数符一起数码化了的数,称为机器数。(1)机器数用二进制表示,其位数与机器字长有关。(2)机器数的编码方法有原码、补码、反码,前两种为常用的,并且CPU支持二者的运算。一、原码表示法原码表示法约定:最高位为符号位,符号位为0表示该数为正,为1表示该数为负;有效数值部分用二进制绝对值表示。1.纯小数(定点小数X0X1…Xn)的原码定义[X]原=x0≤x<1

例:X=+0.1011——X原=0.1011

1-x=1+|x|-1<x≤0

例:X=-0.1011——X原=1.1011X表示真值,[X]原为用原码表示的机器数,可简写成X原2.纯整数(定点整数XnXn-1…X0)的原码定义[X]原=X

0≤X<2n

例:X=+1011——X原=01011

2n-x=2n+|x|-2n<X≤0

例:X=-1011——X原=110113.使用原码表示数值的一结论。(见教材P30)4.原码的特点:其表示较为直观,实现乘、除法较方便,加减法较复杂。二、补码表示法补码表示法的核心:是让符号位也作为数值的一部分直接参与运算,以简化加减运算的规则,同时以能“化减为加”。模的概念:类似于时钟的以12为计数循环,12即为模。补码的定点小数的表示范围约为-1~+1,即以2为模。X表示真值,[X]补为用补码表示的机器数,可简写成X补1.补码定义:(1)定点小数的补码(X0X1X2…Xn)定义式:[X]补=X0≤X<1

例:X=0.1011——X补=X=0.10112+X=2-|X|-1≤X<0

例:X=-0.1011——X补=2-0.1011=1.0101定点小数的补码的模为2补码的统一式:[X]补=M+X(modM)M为模适用于正负数符号位(2)定点整数的补码(XnXn-1…X0)定义式:[X]补=X

0≤X<2n

例:X=1011000——X补=010110002n+1+X=2n+1-|X|-2n≤X<0

例:X=-1011000——X补=28-1011000=100000000-1011000=10101000定点整数的补码的模为2n+1

这里的n指定点整数的实际位数。2.由真值、原码转换为补码:由真值求补码,可先按真值写出原码(即加上符号位),再由原码转换为补码。(1)正数的补码=原码(2)负数原码转换成补码:之一:“变反加1”即:符号位保持为1不变,其余各位先变反,然后在末位加1。之二:符号位保持为1不变,尾数部分自低向高位,第一个1及其以前的各低位0都保持不变,以后的各高位则按位变反。例:X原=1.(101011……)10

X补=1.(010100……)

10不变变反不变3.由补码表示求原码、真值(1)正数的补码=原码(2)负数补码转换成原码可采取上述两种方法之一,作逆转换即可。见教材P33三、反码表示法1.正数的反码=原码2.负数的反码为:符号位为1,尾数由原码尾数按位变反。例:X原=1.11010——X补=1.00101§2.1.3.数的定点表示与浮点表示根据小数点的位置是否固定,在计算机中数的格式又可分定点表示与浮点表示两类。一、定点表示法在计算机中,小数点的位置固定不变的数,叫定点数。有三种类型的定点数。1.无符号定点整数(即:略去符号位的正整数)

n+1位的无符号整数Xn…X1X0,

表示范围:0~(2n+1

-1)分辨率为1,即也表明了它的绝对精度。注意:(1)这里的n表示位置序号,n+1表示为实际位数。(2)由于是正数,补码=原码由绝对值最大负数到最大正数最小非零正数2.带符号定点整数(纯整数)Xn…X1X0符号位典型值真值代码原码绝对值最大负数-(2n-1)11…11原码绝对值最小负数-110…01原码最小非零正数+100…01原码最大正数2n-101…11补码绝对值最大负数-2n10…00补码绝对值最小负数-111…11补码最小非零正数+100…01补码最大正数2n-101…11原码定点整数的表示范围:-(2n-1)~(2n-1)补码定点整数的表示范围:

-2n~(2n-1)定点整数的分辨率为13.带符号定点小数(纯小数)对于n+1位定点小数X0.X1…Xn原码定点小数的表示范围:-(1-2-n)~(1-2-n)补码定点整数的表示范围:

-1~(1-2-n)定点小数的分辨率为2-n符号位注意:定点数的小数点位置是固定的,不需要设置专门的硬件或数位来表示。定点数的表示范围是有限的,若运算结果超出表示范围,称为溢出,分正溢和负溢。因此需要选择比例因子。二、浮点表示法浮点数:就是让小数点的位置根据需要而浮动。一个浮点数由一个定点整数和一个定点小数组成,因此浮点运算是由两组相关的定点运算来实现的。1.浮点数格式浮点数的真值为:N=±REMEfEmEm-1…E1MfM1M2…Mn阶符数符图2-1:浮点数格式示例阶码E:即为比例因子RE部分的指数值尾数M,为带符号定点小数,可用原码或补码表示。R一般取22.移码(增码)定义:X移=2m+X-2m≤X<2m式中X是阶码的真值,2m是符号位的位权。这相当于将真值X沿数轴正向平移2m,所以称为移码。3.表示范围与精度见教材P37页浮点数的表示范围取决于阶码的位数,相对精度取决于尾数的位数。4.IEEE745标准浮点格式:见教材P37§2.2字符表示§2.2.1ACSII码美国标准信息交换码,共有128个常用字符,如1-9,a-z(大、小写),运算符等。每个ASCII代码均由7位编码组成,即为7个字节§2.2.2汉字编码简介1.汉字输入码2.汉字交换码3.汉字内部码§2.3指令信息的表示

§2.3.1指令格式1.指令格式(1)操作码:指令中的若干位代码构成操作码,它表明该指令所要完成的操作是什么。它也是区别不同指令的主要依据。操作码OP地址码A

1.指令格式(2)操作数或操作数地址:指令应给出操作数(参与操作的数据)的有关信息。一般采用给出操作数存放的地址,即指令代码给出操作数地址信息,并指明CPU如何根据它们去寻找操作数(寻址方式)。(3)存放运算结果的地址。(4)后继指令地址。即给出当现行指令执行完后,到何处读取下一条指令的信息。2.指令中的地址结构显地址:在指令代码中明显地给出地址,这地址称为显地址。隐地址:事先隐含约定操作数在某个寄存器中或在堆栈之中,而指令中并不给出地址码,这种隐含约定的地址称为隐地址。采用隐地址(隐含约定),以简化地址结构,即减少指令中的显地址址数。例:对于常规的双操作数的运算,指令本应给予出4个地址,它们是两个操作数的存放地址、运算结果存放地址和后继指令地址。由于这种地址结构所需的位数太多,所以采用隐地址。按地址结构,实用指令分类:(1)三地址指令格式:功能:(A1)OP(A2)A3

指令分别按A1与A2地址读取操作数,按操作码OP进行运算操作,然后将结果存入A3地址所指定的主存单元或寄存器。

(PC)+n

PC

隐含约定由程序计数器PC提供后继指令地址。OPA1A2A3A1、A2分别是操作数1、2所在地的地址A3是运算结果存放地址(A1)是按A1地址读取的内容即操作数1(2)二地址指令格式:功能:(A1)OP(A2)A1(PC)+nPC

指令分别按A1与A2地址读取操作数,按操作码OP进行运算操作,然后将结果存入A1地址所指定的主存单元或寄存器。OPA1A2由A2地址提供的操作数,在运算后仍保存在原处,称为源操作数,A2称为源地址。A1是最终存放结果的目的地,由A1提供的操作数称为目的操作数。(3)一地址指令格式:当OP为加1、减1、求反、求补时,指令为只有目的操作数的单操作数指令,即:按A地址读取操作数,进行OP指定的操作,结果存回原地址。记作:OP(A)A当OP为加、减、乘、除时,隐含约定目的地的双操作数指令,即按指令给出的源地址A可读取源操作数,从累加器AC的寄存器中读取目的操作数,运算结果存放在AC中。记作:(AC)OP(A)ACOPA一是可用处理单操作数运算;二是可用来处理比操作数运算(4)零地址指令格式:当OP为空操作、停机指令时,不需要操作数的指令;对累加器AC内容进行操作,而AC为隐含约定;记作:OP(AC)AC对堆栈栈顶单元内容进行操作OP指令中只给出操作码,没有显地址。堆栈是一种按“后进先出”存取顺序的存储组织,每次存取的对象是栈顶单元,该单元是浮动的,由一个堆栈指针SP寄存器给出栈顶单元地址。3.操作码结构(1)固定长度操作码:操作码位数一定且位置固定。(2)可变长度操作码当指令中的地址部分位数较多时,让操作码的位数少;当指令的地址部分位数减少时,可让操作码的位数增多,以增加指令的种类。(3)单功能型或复合型操作码单功能型操作码即让操作码只表示一种操作含义,主要是为了能够快速地识别并执行操作码;复合型操作码即将操作码分为几个部分,可产生多种组合,使操作含义更加丰富。操作码的位数决定了操作类型的多少,同时当指令字长有限时,地址部分的位数与操作码的位数相互制约。4.指令字长(1)变字长指令将操作码放在指令字的第一个字节,当读出操作码后即可判定后的操作数指令。(2)固定字长指令是为了提高执行的速度,采取精简指令系统。当指令字长有限时,地址部分的位数与操作码的位数相互制约。因此,指令字长的设计有两种方法。主存是按编字节编址,所以指令字长为字节的整数倍§2.3.2常见寻址方式寻址方式:指令中以什么方式提供操作数或操作数地址。CPU根据指令约定的寻址方式对地址字段的有关信息作出解释,以找到操作数。一条指令之中可以有多种寻址方式。寻址方式的种类:(1)立即寻址(2)直接寻址类(3)间接寻址类(4)变址类1.立即寻址立即寻址方式:由指令直接给出操作数,在取出指令的同时出就取出了可立即使用的操作数,这种寻址方式称为~。立即数的存放方式:在指令之中——在指令之后——立即数OP立即数指令立即数2.直接寻址直接寻址:指令直接给出操作数地址,根据该地址可从主存中读取操作数。主存指令

寻址的过程:绝对地址:最后读取操作作数的有效地址。OPA操作数操作数地址操作数AM主存储器适合于寻找固定地址的操作数3.寄存器寻址(直接)寄存器寻址:是在指令中给出寄存器号,在该寄存器内存放着操作数示意图:指令RO指令给出的寄存器号是RO,从RO中可直接读取操作数S寻址过程:寄存器号操作数ROPRO操作数S4.间接寻址(简称:间址)间接寻址:指令给出存放操作数的主存单元的地址。其中:存放操作数地址的主存单元称为间址单元,间址单元本身的地址码称为操作数地址的地址。示意图;见教材P46页指令中给出地址A1,据此访问间址单元,从中读取地址A2,按A2再访问一次主存,读取操作数S。寻址过程:间址单元地址操作数地址操作数MM通过多层读取来提供地址的可变性。5.寄存器间址及其变型寄存器间址方式:为操作数在主存中,由指令给出寄存器号,被指定的寄存器中存放着操作数有效地址。由寄存器提供地址和修改寄存器内容,在比主存的读出和修改快得多。采用寄存器间址方式能减少指令中一个地址码的位数。5.寄存器间址及其变型示意图;见教材P47页指令中在地址段给出的是寄存器号RO,从RO中读出的是操作数地址A,按A地址访问主存,从中读取操作数S。寻址过程:寄存器号操作数地址操作数RM寄存器间址方式的两种变型:(1)自增型寄存器间址:先操作(从寄存器中取地址)后修改(加1)助记符:(R)+

寻址过程:寄存器号操作数地址操作数

R内容加1(2)自增型寄存器间址:

先修改(指针内容减1)后操作(从主存读取操作数)助记符:-(R)

寻址过程:寄存器号寄存器内容减1为操作数地址操作数RMRM6.变址寻址变址寻址:是指令的地址部分给出一个形式地址,并指定一个寄存器作为变址寄存器;寄存器的内容与形式地址相加,得到操作数有效地址;按照有效地址访问某主存单元,该单元内容为操作数。是通过地址计算使地址灵活可变助记符:x(Ri)寻址过程:形式地址D

变址寄存器号变址量ND+N=有效地址操作数RM一般将形式地址作为基准地址,变址寄存器内容作为修改量(又称为位移量、变址量)7.基址寻址基址寻址:指令中给出一个形式地址(作为修改量),并给出基址寄存器号,基址寄存器内容(作为基准量)与形式地址相加得到操作数有效地址。主要解决(1)程序重定位;(2)扩展有限字长指令的寻址空间。变址寻址与基址寻址比较:变址寻址基址寻址具体应用由指令提供形式地址作为基准量,其位数足以指向整个主存由基址寄存器提供基准量,其位数足以指向整个主存变址寄存器提供修改量,其位数可长可短指令给出形式地址作为位移量,其位数较短应用目的面向用户,可用于访问字符串、数组等成批数据面向系统,可用来解决程序在实际主存中的重定位问题,以及在有限字长指令中扩大寻址空间。8.相对寻址相对寻址:以当前指令中位置为基准,相对它进行位移(向前或向后)定位。示意图:见教材P50。

程序计数器PC的内容为现行指令地址A,按地址A从主存中读取指令。指令中地址段给出位移量d,通过加法器进行A+d得出操作数地址,据此访问主存,从A+d单元中读取操作数。指从现行指令位置到操作数S所在单元之间的距离(单元数)。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论