浮点数表示法以及相关“小”知识点

浮点数的表示形式

小数点的位置是浮动的。

任意一个二进制数N可 以表示成:N=S×r^j

其中,S为尾数(可正可负)r为基数(数值)j是阶码(可正可负)

1、对一个真值为+23.25的十进制数,用浮点数格式表示其原码。 

解:(23.25)10 =(10111.01)2

        浮点数表示其原码为: 0.1011101×2^101

        机器中表示为:

2、十进制数-79.25,用浮点数格式表示其原码、反码和补码。

解:(-79.25)10 =(-1001111.01)2

浮点数表示其原码为:1.100111101×2^+111

浮点数表示其反码为:1.011000010×2^+111

浮点数表示其补码为:1.011000011×2^+111

 规格化浮点数

若不对浮点数的表示做出明确规定,同一个浮点数的表示就具有不唯一性。

为了提高运算的精度,需要充分地利用尾数的有效 数位,通常采取浮点数规格化形式,即规定尾数的最高数位必须是一个有效值

以基数为2说明规格化的格式

尾数M是原码表示,尾数的最高位为1是规格化形式, 即必须满足0.5≤|M|<1。

正数:尾数应为0.1x…x

负数:尾数应为1.1x…x

尾数M是补码表示,尾数的最高位与数符符号位相反为规格化形式。

正数:尾数应为0.1x…x,即0.5≤M<1

负数:尾数应为1.0x…x,即-1≤M<-0.5

当尾数不是规格化数时,就要通过修改阶码并同时左右移动尾数使其变为规格化数,这一过程称为规格化

  • 当基数为2时,尾数左移一位,阶码减1,称为 向左规格化(左归)
  • 当基数为2时,尾数右移一位,阶码加1,称为 向右规格化(右归)

移位后补0还是1?

1、把非规格化的浮点数N=0.0110×2^11规格化。

解:浮点数N的尾数向左移一位(或尾数的小数点 右移一位),变成0.1100。

       阶码递减1,得到N=0.1100×2^10

2、把浮点数-37.125进行规格化表示。

解:(-37.125)10=(-100101.001)2

        规格化表示:1.100101001×2^110 

3、把二进制浮点数0.000110101进行规格化表示。

解:(0.000110101)2=(0.110101)2×2^-11

        规格化表示:0.110101×2^-11

4、把二进制浮点数-10011111进行规格化表示。

解:(-10011111)2=(1.10011111)2×2^1000

        规格化表示:1.10011111×2^1000 

IEEE754标准浮点数

  • 数符表示浮点数的正负,与尾数是分开的。
  • 阶码用移码来表示,一般情况下,阶码是在指数 上加一个常数,分别为7FH和3FFH。
  • 尾数通常用原码的规格化表示,最高位总为1, 这一位通常不予存储。 

32位的IEEE754标准定义格式

注:1 8 23 +7F 

64位的IEEE754标准定义格式 

1 11 52 +3FF 

后续以32位单精度浮点数为例,其偏移值为127,尾数有一位隐藏位,一个规格化的32位浮点数X的值可表示为: X=(-1)^S×(1.M)×2^E-127 

1、十进制数178.125转换为二进制数,按照754的 标准进行规格化表示,总位数32位。

解:178.125=(10110010.001)2 =1.0110010001×2^111

        数符:0

        阶码:0000 0111+0111 1111=1000 0110

        尾数:1. 011 0010 0010 0000 0000 0000(第一位隐藏不存储)

        结果:   0; 10000110; 01100100010000000000000

2、十进制数100.25转换为二进制数,按照754的标 准进行规格化表示,总位数32位。

解:100.25=(1100100.01)2 =1.10010001×2^110

        数符:0

        阶码:0000 0110+0111 1111=1000 0101

        尾数:1. 100 1000 1000 0000 0000 0000(第一位隐藏不存储)

        结果:   0; 10000101; 10010001000000000000000

3、十进制数-1.5转换为二进制数,按照754的标准 进行规格化表示,总位数32位。(2018年西电考研)

解:-1.5= (-1.1)2 = -1.1×2^0

        数符:1

        阶码:0000 0000+0111 1111=0111 1111

        尾数:1. 100 0000 0000 0000 0000 0000(第一位隐藏不存储)

        结果:   1; 01111111; 100 0000 0000 0000 0000 0000

4、利用754表示的32位浮点数C1C90000H转换成为十进制数。

解:由题意可得,步骤如下:

  1. 十六进制展开二进制,分离出符号位、阶码和尾数
    C1C90000H= 1; 100 0001 1; 100 1001 0000 0000 0000 000
  2. 计算出阶码真值(移码-偏置值) 10000011-01111111=100
  3. 以规格化二进制数形式写出此数 -1.1001001×2^100
  4. 写成非规格化二进制数形式 -11001.001
  5. 转换成十进制数,并加上符号位 (-11001.001)2=(-25.125)10

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/277494.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言——小细节和小知识7

一、逆序字符串 1、递归1 #include <stdio.h> #include <string.h>void ReverseArray(char *str) {char temp *str;//1int len (int)strlen(str);*str *(str len - 1);//2*(str len - 1) \0;//3if(strlen(str 1) > 2)//只要字符串还大于2&#xff0c;就…

uniapp框架——vue3+uniFilePicker+fastapi实现文件上传(搭建ai项目第二步)

文章目录 ⭐前言&#x1f496; 小程序系列文章 ⭐uni-file-picker 组件&#x1f496; 绑定事件&#x1f496; uploadFile api&#x1f496; 自定义上传 ⭐后端fastapi定义上传接口⭐uniapp开启本地请求代理devServer⭐前后端联调⭐总结⭐结束 ⭐前言 大家好&#xff0c;我是ym…

分享72个NodeJs项目源码总有一个是你想要的

分享72个NodeJs项目源码总有一个是你想要的 学习知识费力气&#xff0c;收集整理更不易。 知识付费甚欢喜&#xff0c;为咱码农谋福利。 链接&#xff1a;https://pan.baidu.com/s/1_bzxbmBlN8ga4-Ci1I0-0w?pwd6666 提取码&#xff1a;6666 项目名称 A lottery webapp …

智慧启航:机场管理系统的革新与飞机航天展馆的视觉盛宴

随着科技的飞速发展&#xff0c;我们的生活方式正在不断地被改变和提升。而在航空领域&#xff0c;这种变化则更加明显。从机场的智慧管理系统大屏&#xff0c;到飞机航天展馆的三维可视化&#xff0c;再到飞机涡轮发动机的3D模型&#xff0c;科技的力量正在带我们进入一个前所…

再谈动态SQL

专栏精选 引入Mybatis Mybatis的快速入门 Mybatis的增删改查扩展功能说明 mapper映射的参数和结果 Mybatis复杂类型的结果映射 Mybatis基于注解的结果映射 Mybatis枚举类型处理和类型处理器 文章目录 专栏精选摘要引言正文动态sql标签ifchoose...when...otherwisewhere、…

电脑开机自动断电,简单4招,快速解决!

“不知道我的电脑最近是怎么回事&#xff0c;每次一开机就会出现自动断电的情况&#xff0c;有什么方法可以解决吗&#xff1f;” 在使用电脑时&#xff0c;由于电源供应不稳定或过热&#xff0c;以及各种硬件问题&#xff0c;可能会导致电脑开机自动断电。遇到这种情况&#x…

CNAS中兴新支点——源代码审计对企业有哪些好处?

源代码扫描&#xff0c;对应用程序进行静态漏洞扫描&#xff0c;分析源代码中存在的安全风险&#xff0c;运行应用于模拟器中对应用进行实时漏洞攻击检测。 你是否了解源代码扫描对企业的好处&#xff1f; 一、源代码扫描&#xff0c;通常能够帮助企业解决这些问题&#xff1…

TinyGPT-V:小而强大,轻量级骨架打造高效多模态大语言模型!

独家作者&#xff08;csdn、掘金、知乎、微信公众号&#xff09;&#xff1a;PaperAgent 每天一篇大模型&#xff08;LLM&#xff09;文章来锻炼我们的思维&#xff0c;简单的例子&#xff0c;不简单的方法&#xff0c;提升自己 一、论文信息 论文题目&#xff1a;TinyGPT-V…

爬虫学习(1)--requests模块的使用

前言 什么是爬虫 爬虫是一种自动化工具&#xff0c;用于从互联网或其他计算机网络上获取数据。它可以模拟人的行为&#xff0c;自动访问网页&#xff0c;提取感兴趣的数据&#xff0c;并将其存储到本地计算机或数据库中。爬虫通常用于搜索引擎、数据分析、信息聚合等领域&…

Spire.Office 8.12.2 for .NET

Spire.Office 8.12.2 发布。在此版本中&#xff0c;Spire.Doc支持Word到PCL和PostScript转换中的文本整形以及确定文档是否加密&#xff1b;Spire.Presentation支持将母版页转换为图像&#xff1b;Spire.PDFViewer支持在WinForm项目中使用Ctrl滚轮实现界面缩放效果。此外&#…

ChatGPT4.0(中文版)国内无限制免费版(附网址)

ChatGPT&#xff0c;由OpenAI开发的人工智能语言模型。它是你的数字对话伙伴&#xff0c;无论你有何问题或需要什么帮助&#xff0c;它都能提供有用的信息。 经过不断的研发和更新&#xff0c;ChatGPT的性能和功能得到了显著提升。现在&#xff0c;我们将重点介绍ChatGPT的两个…

Kubernetes弃用Dockershim,转向Containerd:影响及如何应对

Kubernetes1.24 版本发布时&#xff0c;正式宣布弃用 Dockershim&#xff0c;转向 Containerd 作为默认的容器运行环境。Kubernetes 以 CRI(Container Runtime Interface) 容器运行时接口制定接入准则&#xff0c;用户可以使用 Containerd、CRI-O、CRI- Dockerd 及其他容器运行…

Apple Unity Plugins 接入GameCenter 崩溃解决方案

目录 问题问题原因解决方案可直接使用的UnityPlugins 问题 调用 GKLocalPlayer.Local.FetchItems() 程序崩溃&#xff0c;报错&#xff1a;Thread 1: EXC_BAD_ACCESS (code257, address0x8000000000000002) 启动崩溃&#xff0c;报错&#xff1a;Library not loaded: rpath/Ap…

13. 罗马数字转整数

罗马数字包含以下七种字符: I&#xff0c; V&#xff0c; X&#xff0c; L&#xff0c;C&#xff0c;D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如&#x…

深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第三节 栈与堆,值类型与引用类型

深入浅出图解C#堆与栈 C# Heaping VS Stacking 第三节 栈与堆&#xff0c;值类型与引用类型 [深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第一节 理解堆与栈](https://mp.csdn.net/mdeditor/101021023)[深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第二节 栈基本工…

RFID珠宝门店智能管理设计解决方案

一、项目背景 目前&#xff0c;珠宝行业的盘点工作主要依靠人工操作完成&#xff0c;然而由于珠宝产品体积小、数量大&#xff0c;大数量的产品由少量营业人员花费大量时间进行盘点&#xff0c;这导致盘点效率低下&#xff0c;进而减少了珠宝店在客户营销方面的时间投入。 二、…

1.DQL查询数据(超重点)以及distinct(去重)

DQL(Data Query Language:数据查询语言) 1.所有查询操作都用 SELECT 2.无论是简单的查询还是复杂的查询它都能做 3.数据库中最核心的语言&#xff0c;最重要的语句 4.使用频率最高的语句 语法&#xff1a; SELECT 字段1&#xff0c;字段2&#xff0c;……FROM 表 有时候…

【技术揭秘】软网关BLIoTLink,轻松部署至工控机,实现协议转换网关的快速搭建!

本文教你使用钡铼提供的协议转换软件BLIoTLink &#xff0c;快速搭载在ARM工控机上&#xff0c;变成迷你边缘计算网关。话不多说&#xff0c;跟着操作起来吧&#xff01; 功能简介 BLIoTLink是由深圳市钡铼技术有限公司为推进工业物联网发展而研发的一款免费的嵌入式物联网协…

PC9095高性能可调限流OVP过压过流保护 软启动 抗浪涌 集成功率FET开关

特点 •输入电压范围&#xff1a; •PC9095A、PC9095KA:2.5伏~13.5伏 •PC9095B&#xff0c;PC9095KB:2.5伏~10伏 •PC9095C&#xff0c;PC9095KC:2.5伏~5.5伏 •28V绝对最大额定电压VOUT •带外部电阻器的可调限流器 •集成功率FET开关&#xff0c;53mΩRds&#xff08…

php学习05-常量

常量可以理解为值不变的量。常量值被定义后&#xff0c;在脚本的其他任何地方都不能改变。一个常量由英文字母、下划线和数字组成&#xff0c;但数字不能作为首字母出现。 在PHP中使用define()函数来定义常量&#xff0c;该函数的语法格式如下&#xff1a; define(string cons…