zoukankan      html  css  js  c++  java
  • 计算机编码

    冯诺依曼理论的要点:计算机的数制采用二进制,计算机应该按照程序顺序执行。

    一个数在计算机中的二进制表示形式叫做这个数的机器数,机器数是带符号的,在计算机中用一个数的最高位存放符号,正数为0,负数为1。因为第一位为符号位,所以机器数的形式值不等于真正的数制,为区别起见,将带符号位的机器数对应的真正数值成为机器数的真值,例如10000011的真值为-3,00000011的真值为3。在计算机系统中,数值一律用补码来存储。

    原码、反码、补码

    原码:符号位加上真值的绝对值,即第一位表示符号,其余位表示值

    反码:正数的反码是其本身,负数的反码是在其原码的基础上,符号位不变,其他位取反

    补码:正数的补码是其本身,负数的补码是在其原码的基础上,符号位不变,其他位取反再加1,即在反码基础上加1

    3=[00000011]原=[00000011]反=[00000011]补

    -3=[10000011]原=[11111100]反=[11111101]补

    字符编码:一个字符如何对应一个特定数字的标准

    计算机存储文件:二进制

    计算机显示文件:字符串

    存储,二进制-----------→解码decode-------------→显示,字符串

    显示,字符串-----------→编码encode--------------→存储,二进制

    最早的字符编码为ASCII,只规定了英文字母、数字和一些特定字符与数字的对应关系,每个字符最多只能用8位(1个字节)来表示,所以ASCII最多只能表示28=256个符号。后来各国定义了自己的编码规则,中国规定了的gb2312编码,用两个字节表示一个汉字,日本规定了shift_JIS编码,韩国规定了Euc-kr编码等。

    ascii:使用8位二进制数表示一个字符
    unicode:使用至少16位二进制数表示一个字符,
    utf8:使用尽可能少的二进制数表示一个字符,一个汉字占3个字节
    gbk:一个汉字占2个字节

  • 相关阅读:
    Redis 外网无法访问
    设计模式单例模式
    网易笔试问答(20210328)新生代转移到老年代的情况
    网易笔试(20210327)最长摇摆子数组长度
    网易笔试(20210327)吉利数(子数组中数组和为6的倍数的最大子数组和)
    360笔试(20210328)射气球
    解决TFS 错误:[TF15013 请求的 Team Foundation Server 未向代理服务器注册]
    TFS 常用命令
    生成安全的用于加密的随机数
    一种新的验证码(改进版)
  • 原文地址:https://www.cnblogs.com/Forever77/p/9736789.html
Copyright © 2011-2022 走看看