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

计算机二进制表示和存储各种数据

目录

计算机二进制是什么

计算机中二进制数作用

不同数据的表示和存储

数字

文字

图片

音频

视频

计算机的中数据的显示和存储


计算机二进制是什么

计算机二进制数:计算机里存储的一切都是以二进制的0和1来表示。二进制是计算机使用的数字编码系统,所有的数据都以二进制形式进行存储和传输。在计算机中,数据通常以比特(bit)的形式存储和传输,一个比特可以表示0或1。(bit是计算机能够存储的信息的最小单位)

二进制:二进制数制是一种基数为2的数制,使用0和1两个数码来表示数值。在计算机科学中,二进制被广泛用于计算机内部的信息表示、存储和处理。每个0或1占用存储器(内存或硬盘)上的1个二进制位。然而,计算机可存取的最小单位不是位,而是字节(Byte),每个字节由8个二进制位组成。

PS:计算机二进制就是通常所说的二进制,它们都是基于二进制数制的表示方法,只是在不同场合下有不同的称呼。


计算机中二进制数作用

计算机中的所有数据,无论是文本、图像、音频还是视频,最终都会被转换为二进制形式进行存储和处理。这是因为二进制数的表示和运算规则非常简单,非常适合计算机硬件电路的实现。通过二进制数的运算和转换,计算机能够高效地执行各种复杂的任务。


不同数据的表示和存储

数字

任何数字都可以使用0和1的组合来表示。这是因为二进制系统基于两个基本的数字(或称为基数,base),即0和1。通过组合这些基本的数字,我们可以表示任何非负整数。

二进制数中的每一位(bit)都有一个权重,这个权重是2的幂次。从右到左(最低位到最高位),这些权重分别是2^0, 2^1, 2^2, ..., 2^n,其中n是二进制数的位数减一。二进制数中的每一位(bit)都有一个权重,这个权重是2的幂次。从右到左(最低位到最高位),这些权重分别是2^0, 2^1, 2^2, ..., 2^n,其中n是二进制数的位数减一。

示例:

二进制数00000000就表示十进制中的0

二进制数00000001表示十进制中的1

二进制数00000010表示十进制中的2

依此类推...

一个字节由8位组成,最大可存的数字为:十进制中255(二进制格式表示为11111111),计算:1 * 2^7 + 1 * 2^6 + 1 * 2^5 + 1 * 2^4 + 1 * 2^3 + 1 * 2^2 + 1 * 2^1 + 1 * 2^0 = 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255。

PS:用的线越多,能存储的数字就越大。用8条线就能存储0到255之间的数字,用32条线就能存储0到40亿多的数字。所以能通过二进制系统表达任何数字。


文字

任何文字都可以使用0和1的组合来表示(当然,这给你选择的编码方式有关)。二进制表示文字主要依赖于特定的编码方式(通过编码方式中的)。

以下是主要编码方式:

英文字符,最常用的编码方式是ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)。ASCII码使用7位二进制编码来表示128个不同的字符,包括字母、数字、标点符号等。每个字符都有一个对应的ASCII码值,这个值在计算机内部以二进制的形式存储和传输。

中文字符,由于其数量远超过ASCII码能够表示的范围,因此需要采用其他编码方式。常见的中文字符编码方式包括GB2312、GBK、GB18030以及Unicode等。这些编码方式将中文字符映射到特定的编码值,然后这些编码值再转换为二进制数进行存储和传输。

以Unicode编码为例,它是一种用于表示全球范围内所有字符的编码系统。Unicode编码可以使用16位或32位二进制数来表示一个字符。对于中文字符,Unicode编码能够提供一个唯一的二进制表示,从而确保在不同系统和平台之间的一致性和互操作性。

在计算机内部处理文字时,操作系统或应用程序会根据所使用的编码方式将二进制数据解码为对应的字符。这样,用户就可以在屏幕上看到文字,或者进行文本编辑、搜索等操作。

需要注意的是,不同的编码方式可能使用不同长度的二进制数来表示同一个字符,因此在处理文本数据时,需要确保使用正确的编码方式进行解码,以避免出现乱码或数据损坏的情况(要保证编码和解码使用的方式一致)。

示例:

以ASCII编码方式表示大写字母A

  • 大写字母A的编码是65(十进制数)
  • 大写字母A的二进制表示是1000001

PS:编码方式主要通过字符集、码表(字符集与十进制和二进制的对应表)、十进制、二进制数来表示字符。


图片

任何图片都可以使用0和1的组合来表示。所有的图片信息是通过很小的,叫做像素(pixel)的点来表示,每个点都有它的颜色(每个颜色都能用数字代表)。图片是由上百万个像素组成的(所以存储图片所占空间较大)。

对于最简单的二进制图像(也称为二值图像),每个像素只有两种状态,通常用1位二进制数表示。在这种情况下,像素值非0即1,没有中间值。通常0表示黑色,1表示白色。这种表示方式非常节省空间,但只能描述边缘轮廓等,无法显示图像的细节。

对于更复杂的灰度图像,每个像素的亮度级别用多位二进制数表示。常见的灰度图像使用8位二进制数表示一个像素,这样就有256个可能的亮度级别,从0(黑色)到255(白色),中间的值表示不同的灰色阴影。因此,一个8位灰度图像的每个像素都可以用一个字节的二进制数来表示。

对于彩色图像,情况就更加复杂了。彩色图像通常使用RGB(红绿蓝)色彩模式,每个像素由红、绿、蓝三个分量组成,每个分量都可以用一个字节(8位)的二进制数表示。因此,一个24位RGB彩色图像的每个像素需要3个字节的二进制数来表示。此外,还有更高级的色彩模式,如CMYK和HSB等,它们需要更多的二进制位数来表示。

除了像素值外,图片的二进制表示还可能包含其他元数据,如图像的尺寸、分辨率、颜色深度、压缩方式等。这些信息对于正确地解析和显示图像都是非常重要的。


音频

任何音频都可以使用0和1的组合来表示。声音是由振动的物体发出的,包括人说话的声音、乐器演奏的声音等。而计算机中的音频是指将声音信号转化为数字信号,并通过数学算法对其进行处理和编辑的过程。

声音基本上就是空气中一系列的振动,振动也能通过波形图像来表示,波形图像中的任何点也能通过一个数字来表示,通过这样的方法,任何声音都能被分解成一系列的数字,如果需要高质量的声音,那么就需要32位音频,否则8位就够了。更多的位数意味着更大范围的数字。

二进制数表示音频是通过将模拟声音信号转换为数字信号来实现的。这个过程涉及采样、量化和编码等步骤,最终将声音信息转换为二进制数,以便在计算机中进行存储、处理和传输。

  • 采样:采样是在特定时刻对模拟声音信号进行测量,得到离散时间信号的过程。采样频率(指1秒内的采样次数)决定了音频的分辨率和能够记录的最高频率。如果采样频率过低,高于该频率的声音信号分量会发生频域混叠,导致声音失真。
  • 量化:量化是将采样值转换为有限数量的离散值的过程,即将模拟信号的幅度转换为二进制数。量化位数(描述每个采样点的二进制数位)决定了音频的精度和信噪比。
  • 编码:编码是将量化后的二进制数据转换为适合存储和传输的格式。音频编码通常使用脉冲编码调制(PCM)或其他更高效的压缩编码方法,如MP3、AAC等。

经过上述步骤,模拟声音信号就被转换为了二进制数表示的音频数据。这些数据可以存储在计算机的内存或硬盘中,也可以通过网络进行传输。当需要播放音频时,计算机将这些二进制数据解码回模拟信号,然后通过扬声器播放出来。


视频

视频实际上是由连续的图像帧(可以视为连续的图片)和音频流组成的多媒体内容。这两部分共同构成了我们观看视频时的视听体验。

  • 连续的图像帧:视频是由一系列静态的图像帧组成,当这些图像帧以足够快的速度连续播放时,人眼会感知到动态的画面。每一帧记录了特定时间点的场景,通过连续播放这些帧,我们可以观察到场景的变化和动作的发展。

  • 音频流:与图像帧同步的是音频流,它提供了视频的声音部分。音频流包括对话、音效、背景音乐等元素,为视频增添了声音层面,使得视频内容更加丰富和生动。

以上有对图片和音频的大致说明这里就不再过多叙述。


计算机的中数据的显示和存储

当我们使用计算机中的功能存储数据,并不是直接写1和0,计算机的工作(按照一定的编码方式)会把所有的文字、图片、声音、视频变成简单的1和0,后面就是电路里的电信号,它们是计算机如何输入、存储、处理和输出信息的核心。

计算机中数据的显示其实是对二进制数解码后的,计算机中数据的存储的实际是经过指定编码方式的二进制数。

PS:计算机中数据的存储和数据的还原(显示)是由编码和解码来完成的,编码是将数据转为二进制数,解码是将二进制数转为数据。

编码(Encoding)
编码是将数据从一种格式或字符集转换为另一种格式或字符集的过程,特别是转换为计算机可以理解和操作的二进制数(即比特序列)。编码可以应用于各种类型的数据,包括文本、图像、音频和视频等。例如,对于文本数据,我们可能会使用ASCII、UTF-8或UTF-16等编码标准将字符转换为二进制数;对于图像数据,我们可能会使用JPEG、PNG或BMP等编码算法将像素信息转换为二进制数据。

解码(Decoding)
解码是编码的逆过程,即将二进制数转换回原始数据格式或字符集。当计算机需要读取或显示存储的数据时,它会进行解码操作以恢复数据的原始形式。同样地,解码可以应用于各种类型的数据。例如,当我们打开一个文本文件时,计算机会使用与编码时相同的字符集(如UTF-8)将文件中的二进制数解码为可读的字符;当我们播放一个视频文件时,计算机会使用与编码时相同的解码算法将文件中的二进制数据解码为帧序列,并将其呈现为动态图像。

相关文章:

计算机二进制表示和存储各种数据

目录 计算机二进制是什么 计算机中二进制数作用 不同数据的表示和存储 数字 文字 图片 音频 视频 计算机的中数据的显示和存储 计算机二进制是什么 计算机二进制数:计算机里存储的一切都是以二进制的0和1来表示。二进制是计算机使用的数字编码系统&#x…...

玩机社区 - 2024年最美社区源码开源

玩机社区 - 2024年最美社区源码开源 教程源码文档都内置到压缩包了 https://pan.baidu.com/s/1xwcscTne-JMbmKEntiuAuA?pwd78oi...

Linux系统——面试题分享

目录 1.现在给你三百台服务器,你怎么对他们进行管理? 2.简述 raid0 raid1 raid5 三种工作模式的工作原理及特点 2.1RAID 0 ——可以是一块盘和 N 个盘组合 2.2RAID 1 ——只能2块盘,盘的大小可以不一样,以小的为准 2.3RAID 5 …...

谈恋爱没经验?那就来刷谈恋爱经验宝宝吧

❤️作者主页:小虚竹 ❤️作者简介:大家好,我是小虚竹。2022年度博客之星评选TOP 10🏆,Java领域优质创作者🏆,CSDN博客专家🏆,华为云享专家🏆,掘金年度人气作…...

element-ui输入框和多行文字输入框字体不一样解决

element-ui的type"textarea"的字体样式与其他样式不同 <el-input type"textarea"></el-input> <el-input ></el-input>设置&#xff1a; .el-textarea__inner::placeholder {font-family: "Helvetica Neue", Helvetic…...

(Java企业 / 公司项目)配置Linux网络-导入虚拟机

公司给了我一个IP地址 &#xff0c;提供了一个虚拟机或者自己搭建虚拟机&#xff0c;还有提供登录的账号密码 可以查看我之前的文章 VMware Workstation Pro 17虚拟机超级详细搭建&#xff08;含redis&#xff0c;nacos&#xff0c;docker, rabbitmq&#xff0c;sentinel&…...

java的unsafe

在Java中&#xff0c;sun.misc.Unsafe 是一个强大且危险的类&#xff0c;它提供了一些直接操作内存、对象和线程的底层功能。这个类通常不鼓励普通开发者使用&#xff0c;因为它绕过了Java语言的一些安全性和内存管理机制&#xff0c;可能会导致难以追踪的错误和安全漏洞。 Un…...

起底震网病毒的来龙去脉

2010年&#xff0c;震网病毒被发现&#xff0c;引起世界哗然&#xff0c;在后续的10年间&#xff0c;陆陆续续有更多关于该病毒的背景和细节曝光。今年&#xff0c;《以色列时报》和《荷兰日报》又披露了关于此事件的更多信息&#xff0c;基于这些信息&#xff0c;我们重新梳理…...

[杂项]优化AMD显卡对DX9游戏(天谕)的支持

目录 关键词平台说明背景RDNA 1、2、3 架构的显卡支持游戏一、 优化方法1.1 下载 二、 举个栗子&#xff08;以《天谕》为例&#xff09;2.1 下载微星 afterburner 软件 查看游戏内信息&#xff08;可跳过&#xff09;2.2 查看D3D9 帧数2.3 关闭游戏&#xff0c;替换 dll 文件2…...

服务器没有图形界面没有显示器怎么办

可以用vnc。 vnc是开元的。什么是vnc&#xff1f; 使用vnc 下载vnc和vncserver命令。 每生成一个图形界面就叫做开启session会话。 vnc相关命令&#xff1a; start a new session: vncserver。 如果没有会话&#xff0c;一般从:1开始 端口5901 vncserver :2 #指定会话为:2 端…...

标准化软件实施方案(直接套用即可)

软件实施方案 二、 项目介绍 三、 项目实施 四、 项目实施计划 五、 人员培训 六、 项目验收 七、 售后服务 八、 项目保障措施 软件开发全套资料获取&#xff1a;&#xff08;本文末个人名片也可直接获取&#xff09;软件开发全套资料_数字中台建设指南-CSDN博客 软件产品&am…...

云和恩墨海外首秀在吉隆坡召开的2024中国智能科技与文化展览会

作为中马建交50周年官方重点推荐的活动之一&#xff0c;2024中国智能科技与文化展览会&#xff08;第四届&#xff09;于5月20至21日在毗邻吉隆坡双子塔的吉隆坡国际会展中心举办。本次展览会获得马来西亚科学技术创新部、马来西亚通讯部、中国驻马来西亚大使馆和马来西亚中华总…...

什么是react

React 是一个用于构建用户界面的 JavaScript 库&#xff0c;由 Facebook&#xff08;现在的 Meta&#xff09;开发和维护。它首次发布于2013年&#xff0c;并迅速成为最受欢迎的前端库之一。React 的主要目标是提供一种高效、灵活的方式来构建用户界面&#xff0c;特别是在大型…...

EPIC免费领取《骑士精神2》 IGN9分神作骑士精神2限时免费领

EPIC免费领取《骑士精神2》 IGN9分神作骑士精神2限时免费领 最近Epic一直为玩家们送出各种游戏&#xff0c;从《龙腾世纪审判》到《模拟农场22》&#xff0c;而就在今天&#xff0c;epic又为玩家们送出了IGN评分9分高分的骑士精神2.这款游戏&#xff0c;该游戏是一款由Tripwir…...

【Linux】icmp_seq=1 Destination Host Unreachable

执行ping 命令提示&#xff1a;From 192.168.XX.XX icmp_seq1 Destination Host Unreachable 这个错误消息通常表示以下几种情况之一&#xff1a; 网络连接问题&#xff1a;目标主机可能没有连接到网络&#xff0c;或者网络中的某个路由器无法将数据包转发到目标主机。 目标主…...

java性能优化

系列文章目录 文章目录 系列文章目录前言一、Java后端服务接口性能优化建议1.Java后端服务接口性能优化建议2.如何避免大量创建对象 二、使用步骤1.引入库2.读入数据 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 一、Java后端服务接口性能优化建议 …...

Apache JMeter操作

中文-新建组配置 测试计划界面介绍 异常信息 右上角那个小三角可以看到jemter的执行信息&#xff0c;如果你的压测执行不了可以去里面看看一般是报错了 用户自定义变量 可以在这里配置压测的全局变量&#xff0c;这样我们在使用的时候就不用传具体的值&#xff0c;传变量的…...

el-table 划入划出方法

<template><div><el-table :data"tableData" style"width: 100%" cell-mouse-enter"handleMouseEnter" cell-mouse-leave"handleMouseLeave"><el-table-column prop"ddd" label"日期2" widt…...

Todesk无法登录,提示服务器断开连接。(已解决)

坐标福建&#xff0c;近一两个月todesk手机端均无法登录&#xff0c;尝试卸载重装&#xff0c;更新等&#xff0c;均无效。也没搜索到有效的解决方案&#xff0c;今天去看了商店的低星评论&#xff0c;发现是针对福建地区的服务器“维护”&#xff0c;考虑到近期复杂的国际形势…...

NDIS小端口驱动(六)

消息信号中断 (MSI) 提供了网络设备及其微型端口驱动程序可以使用的传统基于线路的中断的替代方法。 从 Windows Vista 开始&#xff0c;操作系统支持两种类型的 MSI&#xff1a;PCI V2.2 MSI 和 PCI V3.0 MSI-X。 支持 MSI-X 的微型端口驱动程序可以指定 中断相关性&#xff…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...