计算机基础——数据存储
在程序媛计划学习了计算机基础,将所学整理如下:核心硬件中央处理器(CPU),内存(Memory),硬盘(Hard Disc),显卡(Graphics Card)。这些硬件之间互相配合,接受输入的数据,进行运算,然后输入硬件之间如何传递信号?用二进制的方式。计算机采用电平信号的方式来来传递数据。电平是电压的范围,低于0.4V被称为低电平,高于2.4V被称为高电平。只用这两种信号而不用更多的信号是为了
在程序媛计划学习了计算机基础,将所学整理如下:
核心硬件
中央处理器(CPU),内存(Memory),硬盘(Hard Disc),显卡(Graphics Card)。
这些硬件之间互相配合,接受输入的数据,进行运算,然后输出
硬件之间如何传递信号?
答: 用二进制的方式。
分析:
计算机采用电平信号的方式来来传递数据。电平是电压的范围,低于0.4V被称为低电平,高于2.4V被称为高电平。
只用这两种信号而不用更多的信号是为了信息传递更简单,更不受硬件影响。
如果有多种信号的话需要用不同的电压范围做区分,同时还要考虑因为电路硬件问题导致电压下降问题,这样处理起来就比较麻烦。因此科学家选择了只用两种信号来传递信息。
高电平用1表示,低电平用0表示。
因为计算机只能识别两种电平,因此我们只能用两种数字来标识不同的信号,所以产生了二进制。
数据的存储
因为计算机传递信号的时候用的是二进制,因此存储数据的时候也是用的二进制。
我们拿到一段存储的二进制,应该怎么阅读呢?这段二进制是一个数据还是两个数据?我们如何确定呢?
所以科学家们规定了8个二进制算作一个数据,这个数据单位就是字节(byte),而每个二进制被称为一位(bit)。
同时,因为二进制实在是不方便读取更何况一个数据就有八位,因此人们发明了更简洁的16进制。
因为16是2的4次方,所以
1Byte = 8位二进制 = 2位16进制
原本用 0000 1111 来表示1Byte,现在用 0F 就可以了,这样更简洁也更方便人们阅读。
数据的格式
我们之前说过,计算机都是以二进制进行存储的,因此我们常用的英文字母a b c等和各种符号等数据在计算机中也都是以二进制形式存储的。
我们需要选择一个标准来规定各种字符对应的二进制,比如我们用01000001表示大写字母A, 用0010 0011表示 # 这个符号。
这个标准必须是通用的,如果不同的机器的标准不同,如果不同机器上的01000001表示的字符不同的话,那么不同的机器之间的信息传递会出现严重偏差。
我们目前最常用的就是美国有关标准的组织规定的标准ASCII码,ASCII码规定了一些常见字符用什么二进制表示。
这种表示字符的约定标准就是编码。
ASCII码是美国规定的,英文里常用字符不超过256(2的8次方)个,同时科学家之前规定了每8位存储一个数据,所以256种字符用一个字节的8位表示刚刚好,ASCII码的每一个字符都用一个字节表示。
但是当计算机推广到全世界的时候,256个字符就不够用了,比如中国的字就远远超过这个数量,这时就需要其他编码规则,比如utf-8等。
文件的格式
文本文件
我们前面讲到了ASCII编码,其实我们常用的txt文件就是使用这种方式进行编码的。
电脑上的文件都有扩展名或者后缀名。根据扩展名不同,解读数据用的程序和编码都不同。
只有用正确的编码格式去解读文件才能得到正确的数据。用文件阅读器去读取jpg文件只会读到一串乱码。因此直接修改文件的后缀可能会导致文件无法打开。
图片文件
图片有好几种存储格式,主要的一种是位图(Bitmap),图片由若干个点(pixel)组成,每个点是一个像素。
一个800*600分辨率的图的意思是长800个像素,宽600个像素,一共48w像素。
在存储的时候,每个像素占据3个字节。因为每个点都有颜色,颜色通过RGB(red, green, blue)来表示,格式如# FF AA BB,两个16进制位就是一个字节,因此每个像素点占据3个字节。

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)