计算机组成原理

计算机组成原理

机器数及其特点

一、为什么研究机器内的数据表示
** 1)目的:组织数据,方便计算机硬件直接使用
** 2)要考虑的因素

支持的数据类型;
能表示的数据范围;
能表示的数据精度;
存储和处理的代价;
是否有利于软件的移植等;

二、
2.1机器内的数据表示
**(1)真值:**符号用“+”、“-”表示的数据表示方法。
**(2)机器数:**符号数值化的数据表示方法,用0、1表示符号。
(3)三种常见的机器数:定点数的形式为x0x1x2x3……xn
计算机组成原理
2.2常见机器特点
原码:

  1. 表示简单:[x]原 = 2n - x
  2. 运算复杂:符号位不参与运算,要设置加法、减法器。
  3. 0的表示不唯一
    [x]原 + [y]原 (不能直接判定是执行加法还是减法运算,分同号和异号)

反码:
(1)

  1. 表示相对原码复杂:[x]反 =2n+1+ x -1
  2. 运算相对原码简单:符号位参加运算,只需要设置加法器,但符号位的仅为需要加到最低位
  3. 0的表示不唯一
    (2)反码运算举例
    已知:x = 1101,y = -1010,用反码运算求 x+y
    解:[x]反 = 01101,[y]反 = 10101
    计算机组成原理
    x + y = 0.0011

补码

(1)

  1. 表示相对原码复杂:[x]补 = 2 n+1+ x。
  2. 运算简单:只需设置加法器。
  3. 0的表示唯一

补码中模的概念(符号位进位后所在位的权值)
(2)

移码(增码)
(1)
移码表示浮点数的阶码,IEEE754中阶码用移码表示
设定点整数x的移码形式为x0x1x2x3……xn
则移码的定义是:
[x]移 = 2n + x -2n < x <= 2n
(x为真值,n为x的整数位位数)
具体实现:数值位与x的补码相同,符号位与补码相反。
(2)
x = +10101 [x]补 = 010101 [x]移 = 110101
x = -10101 [x]补 = 101011 [x]移 = 001011