计算机组成的原理(第二章).pptVIP

  • 0
  • 0
  • 约9.65千字
  • 约 46页
  • 2019-12-08 发布于湖北
  • 举报
计算机组成原理:数据的机器表示 第二章 数据的机器表示 一、数据表示概述 数据表示概述 数制的标识(数制) 用下标表示,如(1010)2、(1010)10 、(1010)16 、 …... 二进制数B、八进制数Q、十进制数D、十六进制数H 两个术语 真值:在现实生活中,用正号、负号加绝对值表示数值的数称为真值(实际值),如123、-128等 机器数:在计算机内部表示的、连同符号一起数码化了的数,称为机器数(机器表示的数),通常采用二进制表示 要做三件事 区分数据的正负、选择数值的码制、确定小数点的位置 二、带符号数的表示方法 带符号机器数的符号表示方式(符号) 规定:机器字中,最高位为符号位 意义:符号位0,表示正数;符号位1,表示负数 带符号机器数的主要编码方式(码制) 原码 补码 反码 移码 1、原码表示 原码表示法规定:一个机器字中,最高位为符号位,符号位为0表示正数,符号位为1表示负数,数值部分与真值相同。 若定点小数的原码形式为 x0.x1x2…xn,则原码表示的定义: [X]原= 原码表示 若定点整数的原码形式为xn-1…x2x1x0 ,定点整数的原码定义: [x]原= 例如,x=+1011,则 [x]原=0000 1011 x= -1011,则 [x]原=1000 1011 对于正数 x=+xn-1…x2x1x0,[x]原= 0xn-2…x2x1x0 对于负数 x= -xn-1…x2x1x0 ,[x]原= 1xn-2…x2x1x0 对于0,有两种形式: [+0]原 = 000…0, [-0]原 = 100…0 原码表示 关于原码表示的结论: 数值0有两种表示形式:+0、-0 纯小数,原码表示范围:-1x1 n位纯整数,原码表示范围:-(2n-1-1)≤x≤(2n-1-1) 原码表示简单易懂;缺点是加法运算复杂, 因为符号位被人为约定(0为正数、1为负数),在运算时,符号位和数值位需要分开处理,同时也会带来时间开销。 2、反码表示 反码表示法规定:符号位的表示与原码相同;数值部分表示如下:对于正数,数值部分与真值的形式相同;对于负数,数值部分为真值的数值位按位求反。 反码表示 对于正数 x=+0.x1x2…xn,[x]反= 0.x1x2…xn 对于负数 x= -0.x1x2…xn,[x]反= 1.x1x2…xn 数值0反码有两种形式:[+0]反 = 0.00…0,[-0]反 = 1.11…1 3、补码表示 补码表示法规定:符号位的表示与原码相同;数值位表示与数的正负有关,对于正数,数值位与真值的形式相同;对于负数,数值位为真值的数值位按位求反,且末位加1。 补码表示 由真值、原码转换为补码 正数的补码表示与原码相同。如:[x]原=0.1010,[x]补=0.1010 负数转换法1:符号位保持1不变,数值位按位求反,末位加1 如: [x]原 = 1.1010 1.0101 (按位求反) + 1 (末位加 1 ) [x]补 = 1.0110 负数转换法2:符号位保持1不变,在数值位中从低位向高位找1,第一个1及其右边的0保持不变,数值位的其余部分求反。 如: [x]原 = 1. 10 10 不变 求反 不变 [x]补 = 1. 01 10 由补码转换为原码、真值 方法:补码 原码 真值 正数:补码与原码相同,不需要转换 负数:可对补码再求补码,结果为原码 举例:假设有[x]原=1001 1101,对应的补码为: [x]补=1110 0011 [[x]补]补=[1110 0011]补 =1001 1101 (= [x]原) 对应的真值=-(16+8+4+1)= -29 补码表示 关于补码表示的结论: 负数的补码=该负数的反码在末位+1。 数值0只有一种表示,无+0和-0之分,补码的负数域不含0。 负数补码和原码相比,多一个负数:-1或-2n-1。 例如:一个n位整数,原码绝对值最大的负数为-(2n-1-1),而补码绝对值最大的负数为-2n-1。 补码的符号位是数值的一部分,可以和数值位一起参与运算,不需要单独处理。 补码表示可以把减法转化为加法,用一

文档评论(0)

1亿VIP精品文档

相关文档