美文网首页
数据存储

数据存储

作者: lyp82nkl | 来源:发表于2019-06-07 00:30 被阅读0次

编程基础

为什么要学编程基础

因为你首先是程序员,其次才是前端。

一个程序员需要知道

1、硬件与软件:计算机的运行原理  《编码》

2、最大的软件: 操作系统  《维基百科》

3、自己写软件: 数据结构与算法 《数据结构与算法》

4、多人写软件: 软件工程  《代码大全》

计算机:二进制的世界

    好奇心是探索的原动力,我们都知道与中国人打招呼要用“你好”,与美国人打招呼要用“hello”

与法国人打招呼要用“Bonjour”,那么我们该如何与计算机打招呼呢?

    计算机只能存储0和1,所以想和计算机打招呼,就要用【1110 0100 1011 1101 1010 0000 1110 0101 1010 0101 1011 1101】

第一步:(内存)如何存储 0 和 1?

存储:1 就充电,0 就不充电

读取:电量大于 50% 就是 1,电量小于 50% 就是 0

第二步:如何存储数字

计算机只存 0 和 1,所以想要存储数字就要转换成二进制。

十进制变二进制  (转换成n1*2^x+n2*2^x的模式)

37(10)=3*10^1+7*10^0=32+4+1=1*2^5+0*2^4+0*2^3+1*2^2+0*2^1+1*2^0=100101(2)

知识扩充:

负数会以补码的形式存储 ,小数会以浮点数的形式存储 

第三步:如何存储字符

将每个字符编号

ASCLL美国信息交换标准代码包含了数字字母等字符128个,但是没有汉字,所以我国就推出了GB2312中国国家标准简体中文字符集(包含6763个汉字及682字符)。

如果你想储存 a,那么就储存 9710 对应的二进制

a -> 0110 00012 -> 6116

如果你想储存 1,那么就储存 4910 对应的二进制

1 -> 0011 00012 -> 3116

第四步:如何存储中文

GB2312 共收录 6763 个汉字,同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的 682 个字符

后来为了存储生僻字、繁体字、日语、朝鲜语等,微软推出了 GBK 字符集

第五步:如何存储所有字符

将全球字符编号

Unicode 字符集

包括中日韩文字、藏文、盲文、楔形文字、 颜文字:-)、 绘文字😂

2016年6月时,Unicode 总共有 128237 个字符

第六步:如何将 Unicode 存到计算机里

以一种高性价比的方式

低性价比

a -> 00000000 00000000 00000000 011000012 = 006116

你 -> 00000000 00000000 01001111 011000002 = 4F6016

高性价比 UTF-8

a -> 01100001

你-> 11100100 10111101 10100000

第六步:如何存储unicode

截止到2016年6月时,Unicode 总共有 128237 个字符。在存储这么多字符的情况下,8位显然达不到要求,因此Unicode 使用了 4 个字节(32位)来存储一个字符。

比如存储a→1100001(2)→00000000 00000000 00000000 01100001

性价比非常低,于是UTF-8应运而生。

UTF-8不是字符集,而是一种编码方式。

00000000 00000000 0000000 01100001→01100001

编码方式:00000000 00000000 00000111 111111111101111110111111

扩展:Javascript使用了unicode字符集,却没有使用UTF-8编码。

【 因为JS 1995年诞生,而UTF-8 1999年诞生详情

JS使用了USC-2编码,后果就是ES5无法表示\UFFFF之后的字符。

相关文章

  • Android ContentProvider(一)

    Android数据存储(一) Android数据存储(二) Android数据存储(三) Android数据存储(...

  • day07

    Android的存储方式 使用SharedPreferences存储数据 文件存储数据 SQLite数据库存储数据...

  • zookeeper数据存储及查看hbase信息

    zookeeper数据存储及查看hbase信息 1.zookeeper数据存储: 1.1内存数据存储、磁盘数据存储...

  • SharedPreferences存储数据

    Android的存储方式 使用SharedPreferences存储数据文件存储数据SQLite数据库存储数据使用...

  • iOS数据存储

    iOS数据存储 数据存储

  • 03Stack栈

    数据结构=数据+存储方式+操作数据 存储什么数据?如int,string类型存储方式 如何组织数据,数据之...

  • iOS App 安全测试

    一、数据存储安全 主要从以下几个方面考虑 Sandbox 数据存储 Keychain 数据存储 Console ...

  • Vue数据存储和页面传值

    数据存储和页面传值 数据存储 Vue 数据存储方法有Vuex、LocalStorage、SessionStorag...

  • SharedPreference与文件存储

    Android常用数据存储方式有SharedPreferences存储数据(虽然还是属于内部存储)、文件存储(内部...

  • 23、localStorage、sessionStorage的储

    1:存储数据 2:取出数据 3:删除存储数据 4:更改数据

网友评论

      本文标题:数据存储

      本文链接:https://www.haomeiwen.com/subject/dakkxctx.html