计算机组成原理(三)

简介: 计算机组成原理(三)

5.掌握定点数的表示和应用(主要是无符号数和有符号数的表示、机器数的定点表示、数的机器码表示);

定点数:小数点位置固定不变。

 定点小数:小数点固定在数值位与符号位之间;

 定点整数:小数点固定在数值位之后。

数的机器码表示:采用二进制表示形式的连同数符一起代码化了的数据,有原反补移码。


b5cdf83225884fa9b4757ba842a215d6.png


6.了解浮点数的表示和应用(主要是浮点数的格式、规格化浮点数、IEEE754标准);

任何一个R进制数N均可写成: (N)R=±SR±e 这其实就是一个科学计数法。

 S是位数,代表数字N的有效数字;

 R是基值,不同的机器,取值不同,计算机中常用的是2、4、8、16;

 e是阶码,代表数字N小数点的实际位置。

浮点数:小数点不固定

 按照上面方法转换后,任何二进制数都可以写成1.xxxx2±e,其中1是默认的,是个隐藏位。然后按照符号位、阶码(阶码先加上偏移量之后,转换成二进制的形式)、小数点后的数值填入,就能得到对应数字的浮点数二进制编码。

 单精度浮点数:一般4个字节32位,1位符号位,8位存放阶码(偏移量为127),剩余23位填小数点后的数值;

 双精度浮点数:一般8个字节64位,1位符号位,11位存放阶码(偏移量为1023),剩余52位填小数点后的数值。

IEEE754标准规定浮点数由:符号位S、指数部分E、尾数部分M,三部分组成。


7.理解定点数运算(主要是移位运算);

逻辑运算:

 按位测:利用“逻辑与”操作可以屏蔽掉数据字中的某些位;

 按位清:利用“逻辑与”可以将数据字的某些位清0;

 按位置:利用“逻辑或”可以使数据字的某些位置1;

 判符合或修改:利用异或特性。

移位操作:

 逻辑移位:无符号数或纯逻辑代码使用

   逻辑左移:按位左移,高位移出,低位添0,向左移出的最高位可保存到运算器的进位状态寄存器C中;

   逻辑右移:按位右移,低位移出,高位添0,向右移出的最低位可保存到运算器的进位状态寄存器C中。

 算术移位:带符号数使用

   算术左移:按位左移,高位移出,低位添0,向左移出的最高位可保存到运算器的进位状态寄存器C中;

   算术右移:按位右移,低位移出,高位添符号数,向右移出的最低位可保存到运算器的进位状态寄存器C中。

 循环移位:实现循环式控制、高低字节的互换和多倍字长数据的算术、逻辑移位

   不带进位循环(小循环):进位状态寄存器C中的内容不参与循环

     左移:按位左移,高位移入低位,同时保存到C中;

     右移:按位右移,低位移入高位,同时保存到C中。

   带进位循环(大循环):进位状态寄存器C中的内容参与循环

     左移:按位左移,高位移入C中,C中的内容移入低位;

     右移:按位右移,低位移入C中,C中的内容移入高位。

   进位状态寄存器C的初始值应该是0


8.掌握定点数运算(主要是加减法运算);

补码加法:

 [x]补+[y]补 = [x+y]补

补码减法:

 [x]补-[y]补=[x]补+[-y]补=[x-y]补

溢出判断与变形补码:

 [x]补+[y]补=[s]补

 溢出时判别信号为:OVR=1

 根据两个操作数的符号与结果的符号判别溢出:

   OVR=(xf⊕sf)*(yf⊕sf)

 根据两数相加时产生的进位判别溢出:

   用Cf表示符号位,C1表示数值最高位,如果对应为产生进位就为1,没有就为0

   OVR=Cf⊕C1

 采用变形补码进行运算:

   用两个二进制位来表示符号位,保证至少有一个符号位是对的。

   定点小数:[x]变形补=x(0≤x<1),4+x(-1≤x<0);mod 4

   定点整数:[x]变形补=x(0≤x<2n),2n+2+x(-2n≤x<0);mod 2n+2


9.了解定点数运算(主要是乘法运算和除法运算);

计算器实现乘除的三种方式:

 利用乘除运算子程序;

 在加法器的基础上增加左、右移位及计算器等逻辑路线构成乘除运算部件;

 设置专用的阵列乘除运算器;

定点数乘法运算:

 原码乘法运算:

   符号位单独处理,采用异或计算符号位。

   原码一位乘法;

   原码两位乘法;

 补码乘法运算:

   补码一位乘法;

 快速乘法运算:

   无符号数阵列乘法器;

   带符号数阵列乘法器;

定点数除法运算:

 原码除法运算:

   原码恢复余数法;

   原码不恢复余数法;

 补码除法运算:

   补码不恢复余数除法;

   布斯除法;

 阵列除法器:

   可控加减单元;

   不恢复余数除法阵列除法器;


10.理解浮点数运算(主要是加减法运算);了解浮点数运算(主要是乘除法运算);

浮点数加减运算:

 对阶:使两个小数的阶码相同

 尾数求和/差:对阶结束后,进行尾数加减运算

 结果规格化;

 舍入;

 浮点运算溢出处理;

浮点乘除运算:

 阶码运算及溢出判断;

 尾数运算;


目录
相关文章
【408计算机组成原理】—移位运算(七)
【408计算机组成原理】—移位运算(七)
Access Key ID(AK)或者Secret Access Key(AK)可能存在错误或者已失效
Access Key ID(AK)或者Secret Access Key(AK)可能存在错误或者已失效
1289 1
|
存储 关系型数据库 数据库
postgresql|数据库|提升查询性能的物化视图解析
postgresql|数据库|提升查询性能的物化视图解析
1387 0
|
8月前
|
数据采集 Web App开发 运维
动态内容加载的解决方案:Selenium与Playwright对比故障排查实录
本项目旨在解决亚航航班数据采集中的反爬挑战。初期使用Selenium遇到Cloudflare验证,后切换至Playwright仍触发反爬机制。通过引入代理IP轮换和UA策略,最终实现双方案并通过压力测试。Selenium适合模拟真人操作,而Playwright在执行速度和自动等待机制上表现更优,成功率高达95%。建议对强反爬网站优先采用Playwright,并配合完善的代理管理和请求特征模拟。
491 1
动态内容加载的解决方案:Selenium与Playwright对比故障排查实录
|
机器学习/深度学习 数据采集 自然语言处理
使用Python实现深度学习模型:智能新闻生成与校对
使用Python实现深度学习模型:智能新闻生成与校对
301 10
|
小程序 JavaScript 开发者
微信小程序分包的相关概念和使用
本文介绍了微信小程序分包的概念、优势、配置方法、加载规则、体积限制,以及独立分包和分包预下载的配置,旨在帮助开发者优化小程序的加载速度和开发效率。
|
JavaScript
vue 首屏添加加载动画 loading
vue 首屏添加加载动画 loading
373 0
|
存储 芯片 块存储
计算机组成原理(2)-----存储芯片与CPU的连接
计算机组成原理(2)-----存储芯片与CPU的连接
891 1
|
存储 固态存储 芯片
计算机组成原理(1)----存储器相关(2)
计算机组成原理(1)----存储器相关
904 1
|
存储 移动开发 固态存储
计算机组成原理(3)-----外存储器
计算机组成原理(3)-----外存储器
1398 1