计算机专业课
  • 说明
  • 数据结构
    • Untitled
      • Page 2
  • 操作系统
    • Page 1
  • 计算机组成原理
    • 1.计算机系统概述
      • 机器字长 存储字长 指令字长 数据字长
  • 2.数据的表示与运算
    • 定点数符号位与数值位
    • 海明码相关计算
    • 定点数的运算 —— 逻辑移位、算术移位、循环移位
    • 补码原理
Powered by GitBook
On this page
  • 一、逻辑移位
  • 二、算术移位
  • 三、循环移位
  1. 2.数据的表示与运算

定点数的运算 —— 逻辑移位、算术移位、循环移位

Previous海明码相关计算Next补码原理

Last updated 3 years ago

一、逻辑移位

逻辑移位的对象是无符号数,移位规则:逻辑左移时,高位移丢,低位添0;逻辑右移时,低位移丢,高位添0

20190710133339831.png

二、算术移位

算术移位的对象是有符号数,在移位的过程中符号位保持不变。

对于正数

三种机器数移位后符号位均不变,左移时最高数位丢1,结果出错;右移时最低数位丢1,影响精度。

对于负数

对于负数,三种机器数算术移位后符号位均不变。

负数的原码左移时,高位丢1,结果出错;右移时,低位丢1,影响精度。

负数的补码左移时,高位丢0,结果出错;右移时,低位丢1,影响精度。

负数的反码左移时,高位丢0,结果出错;右移时,低位丢0,影响精度。

算术移位规则如下:

若为双符号位,则高位符号位保持不变,低位符号位参与移动

三、循环移位

(a)不带进位的循环右移:操作数循环右移位,空出的高位部分由移出的低位部分来填充。同时,CF中只保存最后一次移出的那一位的内容

(b)带进位的循环右移:操作数连同CF位循环右移,用原CF的值填补空出的位,移出的位再进入CF。

(c)不带进位的循环左移:操作数循环左移位,空出的低位部分由移出的高位部分来填充。同时,CF中只保存最后一次移出的那一位的内容

(d)带进位的循环左移:操作数连同CF位循环左移,用原CF的值填补空出的位,移出的位再进入CF。

20190717232154489.png
20190717232216387.png
20190717232231894.png
20190710133517780.png
20190710133734636.png