第三章]运算方法与运算器

计算机中的运算

  • c语言中
    • 位运算
      • &|~^
      • 逐位得到八位数
    • 逻辑运算
      • &&||!
    • 移位运算
      • <<>>
      • 符号扩载
    • 算数运算
      • +-/*
 

定点加减

  • 补码加减法
    • x+y=x+y
    • x-y=x+(-y)
    • 由y求-y补
      • (先y的补)再包括符号位逐位取反加一
      • -128除外
  • 溢出(overflow)
    • 超出数据表示范围
    • 两个同符号相加结果异号说明溢出了
      • 正溢出:正正得负
      • 负溢出:负负得正
    • 检测方法2
      • c1异或c2,最高位的进位和符号位不同
    • 双符号位检测方法
      • 双符号位最高位是正确的符号
      • 全一或全零外溢出

二进制加法运算

  • 加法运算
    • 逐位运算,从右到左
    • 全加器
    • 延时和时序
      • 异或是三级延时
      • 一般一级
    • n位串行加法器
      • 进位5T,输出6T
      • 慢
      • n个一位加法器串联
      • 有符号需要溢出判断
        • 方法2进位判断
      • 无符号位溢出判断
        • 加法进位
        • 减法不进位
      • 运算控制位(sub
        • input=y异或sub
        • sub(0,输出y
        • sub(1,输出-y
        • 整体电路上,还要接c0
          • 0,不变
          • 1,逐位取反再加一
    • 标志寄存器
      • 整数加减运算部件还要加一个“MUX”引入sub
      • ZF结果为零
      • OF符号溢出
      • CF进/借位
      • SF结果为负
    • 并行加法器进位链
      • Ci+1=XiYi+(Xi异或Yi)Ci
        • 串行等上一级C得出后算下一个
        • 并行:将上一级C带入下一位(一般四位一组)
    • 16位加法器
      • 4位加法器内先行进位之间进行串行进位

定点乘法运算

  • 移码和加法实现
  • 阵列加法器
    • n*(n-1)个全加器
    • 像乘法一样,两两相乘再相加,考虑进位
    • 进位一行一行来
    • 溢出判断
      • 有符号:全0或全1不溢出
      • 无符号:全0不溢出

浮点数运算

  • 阶码不同要对阶码
    • 右归,尾数右移,阶码变大
    • 左归,尾数左移,阶码变小
  • 溢出
    • 主要看阶码是否超出范围
  • 规格化
    • IEEE754
    • 纯小数
  • 步骤
    • 对阶
      • 阶差:E补+(-E补)
    • 尾数求和
    • 规格化和舍入处理
    • 溢出判断
  • 浮点运算器

运算器

  • 运算器功能
    • 算术运算和逻辑运算
    • ALU算数逻辑单元
    • 寄存器
  • 总线结构
    • 缓冲器
    • 几个寄存器2几次方
  • 单/双三总线结构与运算通路
作业 (1)
Prev
第二章]数据信息的表示
Next
第四章]存储系统
Loading...
Article List
一个NotionNext搭建的博客
数据库系统概论
大数据原理与应用
javaWeb应用开发基础教程
python
毕业设计
大数据技术综合应用
实训-航空数据系统
java面向对象程序设计
数据结构
算法分析与设计
SPARK
Python爬虫大数据采集与挖掘
云计算
概率论与数理统计
数字逻辑
计算机网络
计算机组成原理
linux
操作系统
人工智能导论
数据仓库与数据挖掘
数据可视化
大数据安全与隐私保护
c语言
C++