2018-6-29 计算机基础—计算机是如何存储数据的

编程基础

WHY

为什么要学编程基础: 谨记你先是一个程序员,其次才是前端。

为什么要学编程基础:为了不夜郎自大,为了掌握更多的知识面

STAY HUNGRY ,  STAY FOOLISH.

2018-6-29 计算机基础—计算机是如何存储数据的_第1张图片

HOW

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)

扩展:负数以补码的形式存储         小数点以浮数点形式存储

三、如何存储字符


2018-6-29 计算机基础—计算机是如何存储数据的_第2张图片
ASCII美国信息交换标准代码③

依照ASCII美国信息交换标准代码

比如想要存储a→97(10)→1100001(2)

四、如何存储中文

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

根据需求的增加,微软后推出了GBK字符集。

五、如何存储所有字符

unicode字符集将全球字符编号存入了计算机。

六、如何存储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 1111111111011111 10111111

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

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

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

你可能感兴趣的:(2018-6-29 计算机基础—计算机是如何存储数据的)