计算机组成原理 第二章 —— 运算方法和运算器

计算机组成原理 第二章 —— 运算方法和运算器

随笔记下我认为有用的。

目录

  • 计算机组成原理 第二章 —— 运算方法和运算器
    • 数制与编码
    • 定点数的表示与运算
    • 浮点数的表示和运算
    • 算术逻辑单元(ALU)

数制与编码

十进制小数转二进制:
eg:将10进制的0.6785转化为二进制数
计算机组成原理 第二章 —— 运算方法和运算器_第1张图片
按从上到下的顺序排列得0.1011。

计算机中的数值数据并不是只有二进制数,也有二进制编码的十进制数(BCD码)

其中最常见的是8421码
在这里插入图片描述
注意:从1010到1111这6个位无效码,运算结果若在这个区间需要加6并向高位进位。

在这里插入图片描述
答案:C

ASCII码中需要记忆的码值:

  • 0:48(30H)
  • A:65(41H)
  • a:97(61H)

计算机组成原理 第二章 —— 运算方法和运算器_第2张图片
答案:B
解析:ASCII码由7位二进制代码表示,所以可以表示128个不同的字符编码。

字符串的存放分大端模式和小端模式:

将一个32位的整数0x12345678存放在一个整型变量(int)中,如图:
计算机组成原理 第二章 —— 运算方法和运算器_第3张图片
注意:这里只是字节存放的顺序不同,但字的顺序是相同的。若一个字符串或数超过了一个字长,则应将其分割后再小端或大端存储。

在这里插入图片描述
答案:D

在这里插入图片描述答案:A

计算机组成原理 第二章 —— 运算方法和运算器_第4张图片答案:A

海明码

若传输 k k k位比特信息, r r r位冗余信息需满足 2 r ≥ k + r + 1 2^r \geq k+r+1 2rk+r+1

在这里插入图片描述

循环冗余检验(CRC)

  • 除数位数 - 1 = 往被除数后面添加0的位数 = 余数位数
  • 相减运算时既不借位也不进位(异或运算)

计算机组成原理 第二章 —— 运算方法和运算器_第5张图片

定点数的表示与运算

在这里插入图片描述
答案:C
解析:原码中0有两种表示。

在这里插入图片描述
答案:C
解析:因为0有两种表示方法,所以总共能表示奇数个数,故不等式两边都能取到,这样正数个数+负数个数+1个0就是奇数个数。

在这里插入图片描述
答案:D
解析:同上。

在这里插入图片描述答案:D

在这里插入图片描述答案:D

在这里插入图片描述答案:C

在这里插入图片描述
答案:C

在这里插入图片描述
在这里插入图片描述答案:C

在这里插入图片描述
答案:D
解析:因为主存地址都是正数,不需要符号位。

原码、反码、补码比较常见就不说了,来看看移码和阶码。

移码:
计算机组成原理 第二章 —— 运算方法和运算器_第6张图片
阶码E:
IEEE754标准:E = e + 127

非IEEE754标准:E = e + 128

定点数的移位运算:

1.算术移位
算术移位的对象是有符号数,在移位过程中符号位保持不变
计算机组成原理 第二章 —— 运算方法和运算器_第7张图片
在这里插入图片描述
答案:C

2.逻辑移位
逻辑移位将操作数视为无符号数,因此不管是左移还是右移都添0.

3.循环移位
计算机组成原理 第二章 —— 运算方法和运算器_第8张图片在这里插入图片描述答案:C

符号扩展
正数的符号扩展:
将原有符号位移位到新符号位上,其余附加位用0来填充。

负数符号位扩展:

  • 原码:符号位置为1,其余用0来填充。
  • 补码:将原有符号位移位到新符号位上,若为整数其余附加位用1来填充;若为小数其余附加位用0来填充。
  • 反码:将原有符号位移位到新符号位上,其余附加位用1来填充。

溢出的概念

若采用双符号位(模4补码)
计算机组成原理 第二章 —— 运算方法和运算器_第9张图片
计算机组成原理 第二章 —— 运算方法和运算器_第10张图片
答案:B
解析:B选项:存储模4补码仅需一个符号位,因为任何一个正确的数值,模4补码的两个符号位总相同。C、D选项:只在把两个模4补码的数送往ALU完成加减运算时,才将两个符号位同时送入。即只在ALU中采用双符号位。
在这里插入图片描述
答案:B

上溢和下溢:
计算机组成原理 第二章 —— 运算方法和运算器_第11张图片计算机组成原理 第二章 —— 运算方法和运算器_第12张图片
答案:A

定点数乘法:
计算机组成原理 第二章 —— 运算方法和运算器_第13张图片
计算机组成原理 第二章 —— 运算方法和运算器_第14张图片
计算机组成原理 第二章 —— 运算方法和运算器_第15张图片
答案:B

在这里插入图片描述答案:D

定点数除法:

在这里插入图片描述

浮点数的表示和运算

计算机组成原理 第二章 —— 运算方法和运算器_第16张图片
eg:
计算机组成原理 第二章 —— 运算方法和运算器_第17张图片
浮点数规格化

规格化的目的:

  • 保证浮点数表示的唯一性
  • 保留更多的有效数字,提高运算精度

在这里插入图片描述
答案:D

在这里插入图片描述
注意
在这里插入图片描述
答案:B

注意:基数不同,浮点数规格化的形式也不同

  • 当基数为4时:若浮点数为正数,数值位前两位不全为0;若浮点数为负数,数值位前两位不全为1
  • 当基数为8时:若浮点数为正数,数值位前三位不全为0;若浮点数为负数,数值位前三位不全为1

在这里插入图片描述
答案:C

浮点数的表示范围:

计算机组成原理 第二章 —— 运算方法和运算器_第18张图片
这个表要记住,其实也好记。尾数的取值跟结果是一样的,要正最大都正最大、要负最小都负最小……

阶码两头取正最大,中间取负最小。

eg:
计算机组成原理 第二章 —— 运算方法和运算器_第19张图片
在这里插入图片描述
答案:D
解析: ( 1 − 2 − 7 ) (1-2^{-7}) (127) x 2 7 2^{7} 27

浮点数的IEEE754标准:
计算机组成原理 第二章 —— 运算方法和运算器_第20张图片

注意:这里省略了1.M中的那个1。

在这里插入图片描述
答案:D

例:
计算机组成原理 第二章 —— 运算方法和运算器_第21张图片计算机组成原理 第二章 —— 运算方法和运算器_第22张图片
规格化:

计算机组成原理 第二章 —— 运算方法和运算器_第23张图片
注意:E取 [ 0000 0001 ~ 1111 1110 ]为规格化数据。

在这里插入图片描述
答案:A
解析:结果为最小正数,尾数取正的最小值为1.0。阶码值取最小 1 − 127 = − 126 1-127 = -126 1127=126

定点数和浮点数的区别:

  • 数值的表示范围: 浮点数 > 定点数
  • 精度:浮点数 < 定点数
  • 数的运算:浮点数需要对尾数和阶码进行运算,之后还要规格化,比定点数运算麻烦。
  • 溢出问题:对于定点数,若运算结果超出范围则溢出。对于浮点数,运算结果超过尾数表示范围不一定溢出,规格化后阶码超出范围才溢出。

浮点数的加减运算

  1. 对阶:小阶向大阶看齐
  2. 尾数运算
  3. 规格化:尾数的最高数值位与符号位不同时,即为规格化形式。
    1)左规:当尾数出现00.0xxxx或11.1xxxx时左规,直至出现00.1xxxx或11.0xxxx
    2)右规:当尾数结果溢出时(10.xxxx或01.xxxx),需要右规。
  4. 舍入:在对阶或右规的过程中,尾数低位可能丢失。可以用“0舍1入”法,若被移去的最高数值位是0,则舍去;若被移去的最高数值位是1,则在尾数末尾加1.
  5. 溢出判断:由阶码的符号决定是否溢出,若阶码符号位是“01”表示阶码大于最大阶码,上溢;若阶码符号位是“10”表示阶码小于最小阶码,下溢。

在这里插入图片描述
在这里插入图片描述
答案:C

计算机组成原理 第二章 —— 运算方法和运算器_第24张图片
答案:D

计算机组成原理 第二章 —— 运算方法和运算器_第25张图片
答案:C
解析:对阶和右规可能会舍入。

计算机组成原理 第二章 —— 运算方法和运算器_第26张图片
答案:D

算术逻辑单元(ALU)

一位加法器:
计算机组成原理 第二章 —— 运算方法和运算器_第27张图片
在这里插入图片描述
这个图需要会默写。

串行加法器
只有一个全加器,数据逐位串行送入加法器中运算。

并行加法器
由多个全加器组成,各位数据同时运算。

并行加法器的最长运算时间主要是由进位信号的传递时间决定的。
在这里插入图片描述
答案:C

ALU
ALU是一种功能较强的组合逻辑电路,它能进行多种算术运算和逻辑运算。

你可能感兴趣的:(计算机组成原理)