c/c++ 二进制十六进制、字符与Ascii码表

二进制十六进制

  • 二进制:每位只能用0,1表示;
    这里写图片描述

  • 二进制数相加

这里写图片描述

  • 二进制到十进制的转换;
    这里写图片描述

  • 十六进制:每位只能用[0,15]来表示,其中A~F表示10,11,12,13,14,15

这里写图片描述
- 十六进制与二进制之间的转化:4位二进制表示一个16进制;
这里写图片描述
- 十六进制与10进制的转化;

这里写图片描述


这里写图片描述


计算机的数据存储

  • Bit:每位计算机用bit来存储,可以存储0,1;
  • Byte:每8个bit是一个Byte,字节,Byte是存储的最小单位;
  • 字:2个字节来存储二进制数据,16个Bit的容量;
  • 双字:4个字节来存储二进制数据32个Bit的容量;
  • 四字:8个字节来存储二进制数据64个Bit的容量;
  • 俩位16进制正好是1个字节,所以很多二进制编辑器都用16进制来表示;
  • -

计算机的数据表示

  • 无符号整数,所有的bit都用来表示数据的大小,不带符号,既不能表示负数;
  • 有符号数:最高位的bit表示符号,剩下的bit表示数据;
    正数:最高为用0,后面是数据部分;
    这里写图片描述
    负数:最高位是1,数据部分是正数的二进制取反以后再+1;
    这里写图片描述

    -正数负数相加=0
    这里写图片描述

  • 小数
    科学计数法的方式来存储小数;
    4个字节为单精度小数,8个字节的为双精度小数;

字符

计算机是没有办法直接存储字符的,0,1;


计算机只能存放数据,所以必须要规定好数据到对应字符的映射;


数据到字符的映射,叫做编码–>将数据当做字符,然后使用这个编码对照表,翻译出来;;

  • Ascii编码:英文字符对照编码 ->一个字节就能搞定;
  • 这里写图片描述
  • utf8编码:大部分的文字的编码;
  • 这里写图片描述
  • 其他编码;

不是说计算机不能直接表示字符吗?那为什么printf能看到字符?

  • 把数据当成字符;
  • 计算机图形学绘制出来的;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值