2.二进制信息

二进制的数字表达

进制

$$ \begin{aligned} &r(r进制数) = (a_{n-1}a_{n-2}…a_0a_1…a_{-m})r \\ &大小 \ R = a{n-1}\times r^{n-1} + … + a_{-m}\times r^{-m} = \sum_{i=-m}^{n-1} a_i\times r^i \end{aligned} $$

  • 最左边的叫高阶位(High-order Bit)最高有效位(Most Significant Bit),对应的权最大

  • 最右边的叫低阶位(Low-order Bit)最低有效位(Least Significant Bit),对应的权最小

重要概念

  1. 数码(Digit)
  • 构成数的数字
  1. 数位(Digit Pisition)

  2. 基数(Base/Radix)

  • 决定数码有多少类
  1. 权(Weight)

二进制数的转换

二进制与十进制

十进制 $\rightarrow$ 二进制

  1. 整数:用十进制数除以2,反写得出二进制数

  1. 小数
  • 将十进制小数部分乘以2,得到乘积
  • 取乘积的整数部分作为二进制结果的一位,将乘积的小数部分继续乘以2
  • 重复上步,直到乘积的小数部分为0,或者已经得到了所需位数的二进制结果

二进制到十进制

  • 按权按位展开

二进制到八进制和十六进制

  1. 关系

  1. 转换技巧
  • 整数在前面补零

  • 小数在后面补零

  1. 注意
  • 十六进制数码被称为半字节(Nibble)

  • 一串数码又称为一个字(Word)

  • 小数点的数字都是整数的都是小数,适用于任何进制

二进制数的计算

加减法

  1. 加法:逢21

  2. 减法: $0-1$,向高位借2

stateDiagram 1 -->0:被借 0 -->1:被借

乘除法

乘法

  • $n$位数和$m$位数相乘,得到$(n+m)$位数

除法

  • 跟十进制差不多

原码 反码 补码 符号位

  1. 几种码
分类 正数 负数
原码 ~ 绝对值的原码,再补个符号位1
反码 与原码相同 取反
补码 与原码相同 原码取反+1
符号位 0 1
补齐 补0 补1
  • 0的补码是0-128的补码和128的补码相同(8进制)

其他的码

一些码

格雷码

示意图

二进制码与格雷码

stateDiagram 二进制码 --> 格雷码:相邻位XOR,最后一位保留 格雷码 --> 二进制码:相邻位XOR,最后一位保留

要求

  • 相邻两个区域只能有$\pmb 1$个位差

ASCII码

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy