当前位置: 首页 > news >正文

计算机组成原理(第二次笔记)

各种码

真值 (书写用):
将用“+”、“-” 表示正负的二进制数称为真值
机器不能识别书写格式,故用“0/1”表示“+/-”符号。
机器码 (机器内部使用):
将符号和数值一起编码表示的二进制数称为机器码。
常用机器码:原码、 反码、 补码、移码

  1. 原码
  2. 反码
  3. 补码
  4. 移码

原码

定点小数的原码形式为 x0 . x1 x2 ··· xn注意中间有个小数点(共n+1位,x0为符号位),则原码表示的定义:

在这里插入图片描述下面给出示例
在这里插入图片描述

定点整数的原码形式为 x0 x1 x2 ··· xn,则原码表示的定义是:
在这里插入图片描述示例
在这里插入图片描述

对于0,原码机器中往往有**“+0”、“-0”**之分,即:

  • 小数:[+0]原=0.000…0
       [-0]原=1.000…0
  • 整数:[+0]原=0000…0
       [-0]原=1000…0

反码

反码其符号位和原码相同, 真值是正数时,反码与原码 相同;真值是负数时,反码数值位为真值数值位取反。
定点小数反码的定义

在这里插入图片描述
在这里插入图片描述
定点整数反码的定义
在这里插入图片描述
【例 】已知机器字长 8位,对于数值0,分别给出其原码 、反码的编码。
【解】
原码:
+0:0000,0000 B → 00 H
-0:1000,0000 B → 80 H
反码:
+0:0000,0000 B → 00 H
-0:1111,1111 B → FF H

补码

定点小数的补码形式为 x0 .x1 x2 ··· xn-1xn,则补码表示的定义是:
在这里插入图片描述
定点整数的补码形式为 x0 x1 x2 ··· xn,则补码表示的定义是:

在这里插入图片描述
补码的表数范围
n+1位补码整数: −2n次方 ~ 2n次方 − 1
n+1位补码小数: −1 ~ 1− 2(-n 次方)
若补码整数的位数是8位,其表数范围: -128 ~ +127
若补码整数位数是16位,其表数范围: -32768 ~ +32767
若补码小数的位数是8位时,其表数范围:
- 1 ~ 1- 2(-7次方) 即 -1 ~ +127/128
若补码小数的位数是16位时,其表数范围:
- 1 ~ 1- 2(-15次方)

补码编码的求解方法

正数直接取其原来的二进制码,符号位为0
负数:
方法一:直接求解,真值数值位逐位取反,末位加1,符号位为1;
方法二:扫描法,从最右侧向左扫描,直到找到第一个1,该数位内容不变,其左侧所有数据位取反,其他数据位不变,符号位为1。
一般情况下第二种方法应该是最快的
熟练记住第二种方法
在这里插入图片描述
在这里插入图片描述

移码

移码通常用于表示浮点数的阶码。
假设定点整数移码形式为 x0x1 x2 ··· xn-1xn时,移码的定义是:
在这里插入图片描述
移码和补码的关系
即数x的补码和移码进行转换时,数值位不变,符号位取反。
在这里插入图片描述下图常考点!!!
在这里插入图片描述


http://www.mrgr.cn/news/27108.html

相关文章:

  • Windows 环境下 vscode 配置 C/C++ 环境
  • pandas 将多条记录整合成一条记录,每条记录的year和month字段组成新的字段名
  • Java集合面试(上)
  • 查找算法--python
  • Makefile(超详细一文读懂)
  • 算法基础-扩展欧几里得算法
  • JS Web
  • python容器四之字典
  • GD - GD32350R_EVAL - PWM实验和验证3 - EmbeddedBuilder - 无源蜂鸣器 - 用PMOS来控制
  • 随机查询若干数据,并根据全部数据的点击量排序的核心代码
  • list和vector的区别
  • 在 Mac 中设置环境变量
  • 性能测试的复习4-数据库连接、控制器、定时器
  • Spring Cloud常见面试题
  • 初学者指南:如何在Windows 11中自定义任务栏颜色,全面解析!
  • 【C#生态园】从基础到深度学习:探索C#机器学习库
  • Stream流的思想和获取Stream流
  • 共享单车轨迹数据分析:以厦门市共享单车数据为例(四)
  • 加速开发体验:为 Android Studio 设置国内镜像源
  • JavaScript --函数的作用域(全局和局部)