【Java|基础篇】计算机中数据的存储规则

简介: 本篇文章只是为了科普 计算机中数据的存储规则。计算机的数据大致分为三类:文本数据,图片和音频,注 视频是图片和音频的结合。

前言:

本篇文章只是为了科普 计算机中数据的存储规则


1.计算机中的数据


计算机的数据大致分为三类:文本数据,图片和音频

注:视频是图片和音频的结合

计算机中任意的数据都是以二进制的形式进行存储的


2.二进制的介绍


我们平时生活中使用的是十进制,一位可以表示的数据范围是0~9,逢十进一.二进制也是差不多,一位可以表示的数据范围是0和1,逢二进一


二进制的运算规则


先举个例子:

思考: 二进制下的101和十进制下的101 表示的结果一样吗? 答案肯定是不一样的对吧,那么二进制下的101是十进制下的几呢?

十进制下的101,其实就是101对吧,这个如果要用十进制要如何算呢?

看下图:

14.png

那么二进制的计算也是如此:

15.png

常见的进制


常见的进制有:二进制 十进制 八进制和十六进制

二进制:由0和1组成,代码中以0b开头

十进制:由0~9组成,代码中不加任何前缀

八进制:由0~7组成,代码中以0开头

十六进制:由0~9和a到f组成,代码中以0x开头

十六进制的a到f:

16.png

进制之间的转换也和上面的二进制转十进制的方法一样

有一点需要注意:十进制转其它进制时还不太一样

十进制转其它进制需要使用:除基取余法

不断除以基数(转成几进制,就除几)得到余数,直到商为0,在讲余数倒着拼回来即可


3.字符的存储


计算机中数据都是以二进制的方式进行存储的,那么字符是如何存储的呢?这就要用到ASCII码表了

如果想知道ASCII码表,可以看看➡ASCII码一览表,ASCII码对照表

每个字符都有属于自己的ASCII码值,这些值就是数字,就可以使用二进制进行存储


4.汉字的存储


因为ASCII是外国人搞出来的,当时并没有考虑到汉字

这就要说到字符集编码:

GB2312编码:1981年5月1日发布的简体中文汉字编码国家标准。收录7445个图形字符,其中包括6763个汉字。

BIG5编码:台湾地区繁体中文标准字符集,共收录13053个中文字,1984年实施。

GBK编码:2000年3月17日发布,收录21003个汉字,包含国家标准GB13000-1中的全部中日韩汉字,和BIG5编

码中的所有汉字。

Unicode编码:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文

本信息转换。


5.图片的存储


图片的存储就要涉及到像素了,每个像素都有颜色,所以才构成了我们看到的图片

三原色:红绿蓝(也就是我们俗称的RGB) 这三种颜色互相搭配就组成了五彩缤纷的颜色

红绿蓝就三个颜色是有取值范围的:每个颜色的取值都在0~255之间 也可以用十六进制来表示,取值范围是0~FF


6.音频的存储


声音都是由波形图的,声音的波形图上的每一个点都有对应的数字


总结:


计算机中任意的数据都是以二进制的形式进行存储的

文本数据:

数字:二进制

字母:对应二进制的ASCII码值

汉字:查询字符集编码,然后转成二进制进行存储

图片:每个像素的RGB三原色进行存储

音频:对声波图进行采样再存储

相关文章
|
3月前
|
Java API 开发工具
【Azure Developer】Java代码实现获取Azure 资源的指标数据却报错 "invalid time interval input"
在使用 Java 调用虚拟机 API 获取指标数据时,因本地时区设置非 UTC,导致时间格式解析错误。解决方法是在代码中手动指定时区为 UTC,使用 `ZoneOffset.ofHours(0)` 并结合 `withOffsetSameInstant` 方法进行时区转换,从而避免因时区差异引发的时间格式问题。
239 3
|
2月前
|
安全 Java
Java异常处理:程序世界的“交通规则
Java异常处理:程序世界的“交通规则
339 98
|
4月前
|
数据采集 JSON Java
Java爬虫获取1688店铺所有商品接口数据实战指南
本文介绍如何使用Java爬虫技术高效获取1688店铺商品信息,涵盖环境搭建、API调用、签名生成及数据抓取全流程,并附完整代码示例,助力市场分析与选品决策。
|
4月前
|
数据采集 存储 前端开发
Java爬虫性能优化:多线程抓取JSP动态数据实践
Java爬虫性能优化:多线程抓取JSP动态数据实践
|
2月前
|
存储 Java Go
【Java】(3)8种基本数据类型的分析、数据类型转换规则、转义字符的列举
牢记类型转换规则在脑海中将编译和运行两个阶段分开,这是两个不同的阶段,不要弄混!
216 2
|
3月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
291 16
|
8月前
|
自然语言处理 Java 关系型数据库
Java|小数据量场景的模糊搜索体验优化
在小数据量场景下,如何优化模糊搜索体验?本文分享一个简单实用的方案,虽然有点“土”,但效果还不错。
220 0
|
6月前
|
人工智能 Java 开发者
【Java实例-简易计算机】使用Java实现简单的计算机案例
一个简单的Java案例——“简易计算器”,帮助编程新手快速上手。通过实现用户输入、基本逻辑运算和结果输出,学习者可以掌握变量声明、Scanner对象使用、控制流语句等关键知识点。文章分为设计思路、关键知识点、完整代码和测试运行四个部分。
224 9
【Java实例-简易计算机】使用Java实现简单的计算机案例
|
传感器 分布式计算 安全
Java 大视界 -- Java 大数据在智能安防入侵检测系统中的多源数据融合与分析技术(171)
本文围绕 Java 大数据在智能安防入侵检测系统中的应用展开,剖析系统现状与挑战,阐释多源数据融合及分析技术,结合案例与代码给出实操方案,提升入侵检测效能。
|
9月前
|
前端开发 Cloud Native Java
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现