编程基础

引子

  • 前端程序员首先是一个程序员,其次是业务主攻前台而已
  • 等我入行了,要从
    • 计算机底层知识------------《编码:隐匿在计算机软硬件背后的语言》
    • 浏览器的原理--------------《图解HTTP》
    • 操作系统

几个方面入手

一、主要学习计算机如何存储数据

  • 1、存储0、1。计算机只识别0,1,1代表晶体管通电了,0代表未通电。
  • 2、存储数字。所有的数字在计算机看来都是0、1表示的一串二进制数字
  • 3、存储字符。ASCII码表(字符集),表示了美国人规定的常见字符。
  • 字符0-9:十进制是48-57
  • 字符A-Z:十进制是65-90
  • 字符a-z:十进制是97-122。97的二进制表示是 0110 0001。为了表示方便,采用16进制来表示,0X61。4个二进制位正好是一个16进制位,例如1111,表示15,所以0000-1111,可以表示0-F。
  • 4、存中文。ASCII码表未收录中文,所以诞生了中国人的GB2312,微软的GBK码表(字符集)。采用16个二进制位存储(2^16)
  • 5、存所有的字符。满足了韩文,颜文字等奇怪字符。Unicode码表(字符集)占32个二进制位,4个字节来存储。2^32=42亿多
  • 6、但是把 Unicode码表性价比不高,因为占用内存太高了,像英文只需要一个字节,却分配给了它4个字节。
    • 由此引申出了一个伟大的编码方式------UTF-8,共计四种编码方式
      • 0000 0000 0000 0000 0000 0000 0111 1111------------没有变化还是0111 1111,7个有效位不变,还是一个字节
      • 0000 0000 0000 0000 0000 0111 1111 1111-------------变为1101 1111 1011 1111 ,11个有效位拆成5+6的组合,2个字节存;最前面的110是告诉浏览器,我有两字节,以0分割,0后面的是有效的,你把两部分,拼接起来吧
      • 0000 0000 0000 0000 1111 1111 1111 1111---------------变为1110 1111 1011 1111 1011 1111。16个有效位拆成4+6+6的组合,3个字节存
      • 0000 0000 0001 1111 1111 1111 1111 1111----------------变为1111 0111 1011 1111 1011 1111 1011 1111,21个有效位拆成了3+6+6+6的组合,4个字节
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 网站乱码问题我们会经常碰到,大多见于非英文的中文字符或其他字符乱码,而且,这类问题常常是因为编码方式问题,主要原因...
    波段顶底阅读 3,076评论 1 9
  • 数据类型 数据的输入和存储。可以分为 A.基本数据类型(四类八种) (整形: int(4个字节) 短整型sh...
    维乾阅读 672评论 2 1
  • 基础 .NET概述 参考:http://www.cnblogs.com/yplong/p/3279934.html...
    donite阅读 1,671评论 0 8
  • 1.为什么要学习编程基础 因为你首先是一个合格的程序员,然后才是一个合格的前端工程师 前提:一个程序员必须知道 硬...
    黄同学2019阅读 298评论 0 1
  • 1.编译程序(1)gcc xx.c,他会默认生成一个a.out的可执行文件,在a.out所在目录,执行./a.o...
    萌面大叔2阅读 1,340评论 0 1