Código original, código inverso, código complementario en computadora

Nota

  • Las siguientes conclusiones son ejemplos de variables con una longitud de 8 bits.

Código original

El código original es el valor absoluto del bit de signo más el valor verdadero, es decir, el primer bit se usa para representar el signo y los bits restantes se usan para representar el valor. Por ejemplo, si es un binario de 8 bits:

[+1] = [00000001] original
[-1] = [10000001] original
[+0] = [00000000] original
[-0] = [10000000] original

El primer bit es el bit de signo. Como el primer bit es el bit de signo, el rango de números binarios de 8 bits es:

[1111 1111, 0111 1111]

Es decir, el rango de valores: [- 2 n - 1 - 1, 2 n - 1 - 1] [-2 ^ {n-1} -1, 2 ^ {n-1} -1][ - 2n - 1-1 ,2n - 1-1 ] , para una variable[-127, 127]
de 8 bits donde, n-número de bits es variable.

Complemento

La representación del código inverso es:

  • El complemento de un número positivo es en sí mismo
  • Negativo invertido que se 原码basa en el bit de signo del mismo, cada uno de los bits restantes se invierte.

[+1] = [00000001] Original = [00000001] Anti
[-1] = [10000001] Original = [11111110] Anti
[+0] = [00000000] Original = [00000000] Anti
[-0] = [10000000] Original = [11111111] anti

Intervalo de valores: [- 2 n - 1 - 1, 2 n - 1 - 1] [-2 ^ {n-1} -1, 2 ^ {n-1} -1][ - 2n - 1-1 ,2n - 1-1 ] , para variables de 8 bits[-127, 127]

Complemento

El método de representación del complemento es:

  • El complemento de un número positivo es en sí mismo
  • El complemento negativo es, en su 原码base en el bit de signo igual, los bits restantes invertidos, y finalmente +1. (Es decir, en base al +1 invertido).

[+1] = [00000001] Original = [00000001] Inverso = [00000001] Complemento
[-1] = [10000001] Original = [11111110] Inverso = [11111111] Complemento
[+0] = [00000000] Original = [00000000 ] Inverso = [00000000] Complemento
[-0] = [10000000] Original = [11111111] Inverso = [00000000] Complemento

Intervalo de valores: [- 2 n - 1, 2 n - 1 - 1] [-2 ^ {n-1}, 2 ^ {n-1} -1][ - 2n - 1 ,2n - 1-1 ] , para variables de 8 bits[-128, 127]

Relación de conversión entre complementos positivos y negativos

N = número correspondiente al complemento del complemento del 按位取反poste negativo +1.
= Número positivo del complemento negativo correspondiente al 按位取反puesto del complemento +1.

[+1] = - [- 1] = ~ [-1] complemento + 1 = ~ [11111111] complemento + 1 = [00000000] complemento + 1 = [00000001] complemento
[-1] = - [+ 1] = ~ [+1] complemento + 1 = ~ [00000001] complemento + 1 = [11111110] complemento + 1 = [11111111] complemento

Enlaces relacionados / de referencia

Código original, código inverso, código complementario

Supongo que te gusta

Origin blog.csdn.net/a435262767/article/details/107282562
Recomendado
Clasificación