二进制的运算

  • 补码与反码

     ️ 补码:

    1. 当二进制数为正数时,其补码、反码和原码相同。
    2. 当二进制数为负数时,将原码的数值位(非符号位)逐位求反(即得反码),然后在最低位加1得补码。
  • 二进制码to格雷码

    ️ 二进制码到格雷码的转换:

    1. 格雷码的最高位(最左边)与二进制的最高位相同

    2. 从左至右,逐一将二进制码相邻的2位相加(舍去进位),作为格雷码的下一位。

二进制的运算_第1张图片

  • 格雷码to二进制码

      格雷码到二进制码的转换:

    二进制的运算_第2张图片

    1. 格雷码的最高位(最左边)与二进制的最高位相同
    2. 将产生的每一位二进制码,与**下一位相邻的格雷码相加(舍去进位),**作为二进制的下一位。
  • Attention

    1. 二进制的最高位表示符号位,“0”表示正数,“1”表示负数。

    2. 编码中每位的值都是固定数,称为位权。(P25)

      有权码:8421码,2421码,5421码

    3. 格雷码是无全码,其每一位的权值不是固定的。

    4. 2421码具有自补性,即:

      如:7(1101),各位取反:0010,9-7=2

    5. 十进制转二进制的两种方法:

      1. 连续除以2,直到商为0**(最低下的余数为二进制的高位)**
      2. 与其相当的二进制作对比
    6. 余三循环码是一种变权码,相邻的两个代码之间仅有 1 位的状态不同。

    7. 余三码是自补码,其编码可以由8421码加3(0011)得出。

    8. 异或:$L=\overline{A}B+A\overline{B}=A\bigoplus B$

    9. 同或:$L=AB+\overline{A}\overline{B}=A\bigodot B$

    10. 短除法:高位在下,低位在上

你可能感兴趣的:(嵌入式硬件)