数据与文字的表示方法

数据与文字的表示方法

计算机中使用数据可分为两大类:

  • 符号数据(ASCII,汉字,图形等等)
  • 数值数据

那么,它们在计算机中是怎么存储的呢?这就是我们学习的目标

数值数据表示方法

数值数据常用的数据表示格式又有两种:

  • 定点格式(数据范围有限,要求的处理硬件简单)
    • 纯小数
    • 纯整数
  • 浮点格式(数据范围很大,要求的处理硬件复杂)

定点纯小数

第一个是符号位,紧跟着就是小数点(在定点纯小数中,小数点固定在符号位之后,不占位置),后面的就是数值

这里写图片描述

范围:

这里写图片描述

例子:1111表示-0.875


定点纯整数

第一个是符号位,后面的就是数值,小数点在数值的最后一位+1(小数点不占位置)

这里写图片描述

例子:1111表示的是-7

在计算机中常用定点纯整数表示,如果数据超出了范围,会溢出的:

这里写图片描述


浮点数的表示方法

为什么要有浮点数表示的方法呢?原因就是定点数表示方法的范围不够大。例如下面的数据,在定点计算机中是无法直接表示出来的

要让它能够送入定点计算机进行某种运算,就必须抽取它们的比例因子(数值部分绝对值小于1)

那么在计算机中就是这样表示一个数字了:把数的有效数字和数的范围在计算机中的一个存储单元中分别表示,数的小数点位置随比例因子的不同而在一定的范围内可以自由浮动。这就叫做浮点表示法

这里写图片描述


任何的一个数N可以写成这样:

这里写图片描述

我们在计算机上表示浮点数是这样的:

这里写图片描述


然而,阶符,阶码,数符,尾数存储的位数是不确定的,对于不同的系统可能存储数据的方式就不一样。

于是为了便于软件的移植,我们按照IEEE754的标准来存储浮点数数据:

这里写图片描述

这里写图片描述

术语解释:

  • S是符号位,0表示正数,1表示负数
  • E是阶码(也就是指数),它用移码来表示(移码容易比较大小),如果是32位的浮点数,就占8位,如果是64位的浮点数,就占11位
    • 将浮点数的e转成在计算机保存浮点数的E,应该在指数e加上一个固定的偏移值127(E=e+127)【这是32位浮点数】,64位浮点数是加上1023的偏移值
  • M是尾数,如果是32位的浮点数,就占23位,如果是64位的浮点数,就占52位

这里写图片描述

我们对浮点数的表示也做出了明确的规定:当尾数的值不为0时,尾数域的最高有效位为1

这里写图片描述

例子1:若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。

步骤:

  • 先把保存在计算机的数据转换成二进制
    • 0 1000 0010 011 0110 0000 0000 0000 0000
  • 计算出指数e,e=E-127
    • 二进制的1000 0010就是E,e=10000010-01111111=00000011=3
  • S=0,e=3,M=0110110,再套公式,最后答案为:

这里写图片描述

例子2:将数(20.59375)10转换成754标准的32位浮点数的二进制存储格式。

步骤:

  • 先把十进制转换成二进制
    • 20.59375= 10100.10011
  • 移动小数点,使其在1和2位之间
    • 1.010010011*2的4次方
  • e=4,E=4+127, S=0,M=010010011
  • 最后得到32位浮点数的二进制存储格式为:
    • 01000001101001001100000000000000

十进制数串的表示方法

大多较强的计算机都能直接处理十进制形式表示的数据,一般有两种形式:

  • 字符串形式【一个字节存放一个十进制数位,为了指明这个数,需要给出起始地址和位数(串的长度)】
  • 压缩的十进制数串形式【一个字节存放两个十进制数位】

原码,反码,补码,移码

有个知乎回答得很好:

https://www.zhihu.com/question/20159860/answer/71256667

计算机实际使用中用来运算和存储的都是补码

移码主要用于表示浮点数的阶码E,有利于比较两个指数的大小和对阶操作!

特点:移码和补码尾数相同,符号位相反


字符和字符串的表示方法

字符数据属于符号数据,国际上采用的字符系统是七单位的ASCII码

直接使用西文标准键盘输入汉字,进行处理,并显示打印汉字需要解决三种不同用途的编码:

  • 输入编码
  • 汉字内码
  • 汉字字模码

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
计算机组成原理 数据与文字的表示方法 练习题 计算机组成原理 数据与文字的表示方法 练习题 题目解析:求最小的非零正数,符号位为0,数值位取非0中的原码最小值,此8位数据编码为:00000001,表示的值是:2-7.「答案」:D。29.二进制数X的真值为-0.1101B,其原码表示为 A ,补码表示位 B ,反码表示为 C。数的范围通过阶码有效地确定,阶码E指明小数点的位置,而数的精度则是通过尾数的数值确定的。数的表示范围通过阶码有效地确定,阶码E指明小数点的位置,而数的精度则是通过尾数的二进制位数确定的。 阅读详情

相关推荐

工业视觉光源频闪控制的三种核心模式与选型实战

本文深入解析工业视觉系统中光源频闪控制的三种核心模式:光源主控、相机主控与硬同步。针对高速飞拍、缺陷检测等场景,详细对比了各模式的时序原理、硬件要求与适用场景,并提供了基于产线速度与检测需求的实战选型指南,帮助工程师有效消除运动模糊、提升成像质量与系统稳定性。

weixin_29299807的博客 440

系统结构_02_CPU浮点数据表示

2.12.1 浮点数计算1.若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。解:将十六进制数展开后,可得二进制数格式为指数解:2.将(20.59375)10转换成754标准的32位浮点数的二进制存储格式。解: 转载于:https://blog.51cto.com/7050893/1329299...

weixin_34191734的博客 241

Zynq7020实战:ARM Cortex-A9降频避坑指南(附温度对比测试)

本文详细介绍了如何在Zynq7020平台上对ARM Cortex-A9处理器进行降频优化,以降低功耗并提升系统稳定性。通过分析时钟架构、提供实战操作步骤和温度对比测试数据,帮助开发者有效避免降频过程中的常见问题,实现嵌入式系统的高效能耗管理。

root9的博客 206

计算机原理考试必备,计算机组成原理重点整理(白中英版) 考试必备

计算机组成原理重点整理(白中英版) 考试必备 山东农业大学期末考试整理一、浮点存储:1.若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。解:将16进制数展开后,可得二制数格式为0 100 00010011 0110 0000 0000 0000 0000S 阶码(8位) 尾数(23位)指数e=阶码-127...

weixin_29826413的博客 1382

ESP32+HC-SR04超声波测距:5分钟搞定智能避障小车核心功能(附完整代码)

本文详细介绍了如何使用ESP32开发板和HC-SR04超声波测距模块快速构建智能避障小车的核心功能。通过优化的接线方案、核心代码实现及调试技巧,帮助开发者5分钟内完成硬件连接与软件编程,实现高效的避障功能。附完整代码,适合创客教育和机器人开发。

weixin_29185199的博客 386

超详细流式细胞术全流程解析:从样本制备到结果分析全攻略

流式细胞术(Flow Cytometry)是现代生物学和医学研究中不可或缺的高通量分析技术,可实现对细胞表型、功能状态、细胞周期等多维度参数的快速检测。本文将从实验全流程出发,详解样本制备、上机操作、参数设置及结果处理的核心要点,帮助科研人员精准掌握流式实验关键技术。

good_rrrrr的博客 3870

计算机组成原理期末总结

为迎接期末,总结了下知识点,供个人复习使用,仅供参考。点我跳转,提取码:1l49为方便读者,markdown文件和PDF文件已发布到优快云资源下载,点我跳转如果想白嫖(点个关注也行啊),需要本文markdown或PDF文件下方评论留言留下邮箱看到即回点我跳转。

夏日 の blog 4万+

电子图像增稳(EIS)原理详解——从抖动补偿到代码实现

电子图像增稳(EIS)是一种通过软件算法实现视频稳定的技术,广泛应用于GoPro、手机和无人机等设备。与光学防抖(OIS)和机械云台不同,EIS通过图像裁切和运动补偿来消除抖动,具有成本低、补偿范围大的优点,但会损失10-30%的画幅。其核心流程包括运动检测、抖动分离、运动补偿和图像裁切四个步骤。相比硬件方案,纯软件实现的EIS更适合消费级电子产品,已成为移动设备视频拍摄的重要技术。

电脑管家 412

计算机组成原理之数据的表示方法详解

计算机中常用的数据表示格式有两种:1.定点格式 2.浮点格式 定点数的表示方法 浮点数的表示方法 数的机器码表示 1.原码表示法 符号位加上二进制数的绝对值: x=+1001,则[x]原=01001; x=-1001,[x]原=11001; 即正数在二进制第一位前添加0,负数添加1; 注意,原码机器中有“+0”、“-0”之分,故存在两种形式: [+0]原=000…0 [-0]原=100…0 原码表示法简单易懂,但缺点明显,在进行两数相减运算时,则要比较绝对值的大小,然后大数减去小数,最后对结果选择恰当的

qq_45929428的博客 4666

基于STM32L4XX、HAL库的GC9307 TFT 液晶驱动IC驱动程序设计

GC9307是一款常用的TFT液晶驱动IC,支持240x320分辨率的RGB接口显示屏。(Master Out Slave In): 连接到STM32L4的SPI数据输出引脚(如PA7)(Serial Clock): 连接到STM32L4的SPI时钟引脚(如PA5)(Data/Command): 连接到STM32L4的GPIO引脚(如PA3)(Chip Select): 连接到STM32L4的GPIO引脚(如PA4)(Reset): 连接到STM32L4的GPIO引脚(如PA2): 分别连接到电源和地。

zhusl6688的博客 1038

vue3 - 高德地图定位出错Get ipLocation failed.Geolocation permission denied.(info: “FAILED“ | status: 0)报错解决!

vue3,nuxt3,高德地图,定位,位置,报错,AMap.Geolocation,解决报当前定位失败,高德地图H5 定位失败报错,web网页网站,报错详细解决教程,Get ipLocation failed.Geolocation permission denied.,高德地图定位报错info: "FAILED",高德地图status: 0,已经是https了还是报错,确保了浏览器位置已经开了,手机定位也开了,没解决,H5页面在ios的浏览器上使用 高德地图 报当前定位失败Geolocation,移动端设

✅ 精选推荐文章 6771

【计算机组成原理】数据与文字的表示方法

数据与文字的表示方法 IEEE754 定点数、浮点数;数的机器码表示原码反码补码移码

m0_74195626的博客 1700

【PCL点云配准】位姿估计

本文介绍了PCL(Point Cloud Library)中TransformationEstimation模块的核心算法原理和实现方法。该模块通过多种子类(如SVD、LM、双四元数等)提供点云配准功能,支持2D/3D刚性变换估计。主要内容包括:1)各类变换估计算法的数学原理和实现细节;2)点对点/点对面两种误差度量方法;3)线性闭式解和非线性迭代两种求解方式;4)变换验证机制;5)基于三点法的完整代码示例。该模块广泛应用于SLAM、三维重建等领域,为点云配准提供了高效可靠的解决方案。

yijiujiusan的博客 243

数据与文字表示方法

数据与文字表示方法 目录数据与文字表示方法1. 数据格式2. 数的机器码表示3. 字符与字符串的表示方法 1. 数据格式 定点数:如果表示纯整数,则最高位是符号位,其余位依次是量值(尾数)。如果表示纯整数,则最高位是符号位,其余位依次是量值(尾数),小数点位于最高位和次高位之间。 浮点数:采用指数表示法,其中尾数部分的绝对值小于1,阶码用整数表示,体现了浮点数的精度 十进制数串:字符串形式(每个数位占一个字节)或压缩的十进制数串形式(每个数位占半个字节,C表示正号,D表示负号,当剩余半个字节时,在最高位前

鼠人的博客 677

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

336-数据与文字的表示方法

数据与文字的表示方法 在选择计算机的数的表示方法时,需要考虑:1、要表示的数的类型(小数,整数,实数和复数)2、可能遇到的数值范围3、数值精确度4、数据存储和处理所需要的硬件代价 数值数据是用于表示数量的大小。选择表示方式时,需要考虑几个因素: 数据类型,整数、纯小数、 实数(通称浮点数); 数值范围,指一种类型的数据所能表示的最大值和最小值; 数据精度,通常用实数所能给出的有效数字的位数表示; 数据存储和处理所需的硬件代价。 计算机常用的数据表示格式有2种,一是定点格式,二是浮点格式。一般来说,定点格式容

LINZEYU666的博客 1720

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

计算机组成原理:数据与文字的表示方法

本文内容:进制转换,有符号数和无符号数,定点数和浮点数,机器码(原码、反码、补码、移码),字符与字符串的表示方法,汉字的表示方法,校验码 。

学愈进而愈惘 6629

计算机中数据与文字的表示方法

数的机器码表示

m0_62689947的博客 414
上一篇: 计算机系统概述
下一篇: 监听器第一篇【基本概念、Servlet各个监听器】
Java3y
Java3y 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 1万+粉丝 509原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值