计算机组成原理(2)

运算器和运算方法
  如何以加法器为基础,实现各种运算处理

  解决思路:
    复杂运算->四则运算->加法运算
  解决方法:
    在加法器的基础上,增加移位传送功能,并选择输入控制条件

  运算器组织
    寄存器组
      独立结构(有独立的输入,输出)
      小型存储器结构
        单口:只有一个地址输入端,一个数据端口
        双口:两个地址输入端,两个数据端口
    独立R,双口RAM用多路选择器作为ALU的输入逻辑
    单口RAM用锁存器作为ALU的输入逻辑

  带多路选择器的运算器
    R(寄存器)各自独立
    可同时向ALU提供两个操作数;
    采用单向内总线

  带输入锁存器的运算器
    单口RAM不能同时向ALU提供两个操作数
    用锁存器暂存操作数
    采用双向内总线

  位片式运算器
    用双口作通用寄存器组,可同时提供数据
    用多路选择器存操作数
    ALU增加乘除功能,用乘商寄存器放乘数,乘积或商

  定点加减运算
    补码加减法
      数据用补码表示,符号位参加运算
    基本关系式
      (x+y)补 = x补 + y补
        操作码为加时,两数直接相加
      (x-y)补 = x补 + (-y)补
        当操作码为减时,将减转换为加
        y补转为(-y)补(讲y补变补):不管y补 为正或负,将其符号连同尾数一起各位变反,末尾加一
    注意:某数的补码表示与某数变补的区别
      补码表示 : 符号位不变,复数的尾数要改变,正数尾数不变
      变补:符号位改变,尾数改变(尾数指符号位后面的所有) 补码的机器负数

    算法流程操作数用补码便是,符号位参加运算 ADD既x补+y补 SUB既x补+(-y)补 结果为补码表示,符号位指示结果正负

  逻辑实现
    控制信号
      加法器输入端 将两个数送入ALU算数逻辑运算部件
      加法器输入端 讲运算结果送入输入端

  溢出判断
    硬件判断逻辑一
      两个数据的符号与结果的符号不一致
    硬件判断逻辑二
      尾数最高位 符号位与尾数最高位的进位不一致
    硬件判断逻辑三
      双符号位不一致

  移位操作
    移位类型
      逻辑移位:数码的位置变化,数值不变
      算数移位:数码位置变化,数值变化,符号位不变

  正数补码移位规则
    单符号位 00111 01110 00111 00011
    双符号位 000111 001110 011100 001110 000111
    移位规则
      数位不变(单:符号位不变; 双:第一符号位不变)
      空位补0(右移时第二符号位移至尾声最高位)

  负数补码移位规则
    单符号位 11011 10110 11011 11101
    双符号位 110110 101100 110110 111011
    移位规则
      数符不变(单:符号位不变;双:第一符号位不变)
      左移空位补0
      右移空位补1(第二符号位移到尾数最高位)

posted @ 2013-03-16 21:29  chapterlin  阅读(265)  评论(0)    收藏  举报