进制转换

  • 十进制
    • 基数0~9,逢10进1
    • 示例:123 = 1 * 10^2 + 2 * 10^1 + 3 * 10^0 = 100 + 20 + 3 = 123
  • 二进制
    • 基数0和1,逢2进1
    • 示例:0b110100 = 2^5 + 2^4 + 2^2 = 32 + 16 + 4 = 52
    • 十进制转二进制:除2取余,倒序书写
      • 22 = 0b10110
  • 八进制
    • 基数0~7,逢8进1
    • 示例:0o123 = 1 * 8^2 + 2 * 8^1 + 3 * 8^0 = 64 + 16 + 3 = 83
    • 八进制转二进制:八进制的1位可以表示3位二进制数
      • 0o123 = 0b 001 010 011
  • 十六进制
    • 基数09、AF,逢16进1
    • 示例:0xAB = 10 * 16^1 + 11 * 16^0 = 160 + 11 = 171
    • 十六进制转二进制:十六进制的1位可以表示4位二进制数
      • 0xABC = 0b 1010 1011 1100
  • 计算机中是以哪种进制存储数据的,为什么?
    • 二进制,因为计算机只识别二进制。具体原因:
    • 稳定性高(只有0和1)、成本低(技术上容易实现)、与生活中的真假逻辑相吻合(便于解决生活中的实际问题)
  • 原码反码补码
    • 如何存储负数?
      • 最高位作为符号位:0表示正数、1表示负数
      • 虽然牺牲了最高位,但是解决了负数的表示问题,简化了硬件设计
    • 原码反码和补码:是针对负数而言的(正数的三码一致)
      • 负数的反码等于数据原码的符号位不变,数据位取反
      • 负数的补码等于对应的反码加1
    • 计算机中的数据都是以补码的形式存储的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值