[Python] Operação de bit e sua aplicação

1. Número da máquina, valor da verdade, código original, código invertido, código complementar

https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html

Número da máquina : a representação binária de um número em um computador.O número da máquina é assinado.O computador usa o dígito mais alto de um número para armazenar o sinal.

Valor verdadeiro : como o primeiro bit é o bit de sinal, o valor formal do número da máquina não é igual ao valor verdadeiro.O valor verdadeiro correspondente ao número da máquina com o bit de sinal é chamado de valor verdadeiro do número da máquina

Por que você precisa definir o código original, o código invertido e o código complementar : para facilitar o bit de sinal para participar da operação

Por que o computador armazena o código de complemento ao armazenar os dados : Há apenas um somador no computador e somente a operação de adição pode ser executada

2. Como obter o complemento de números em Python?

  • função bin: retorna binário com sinal negativo em vez de complemento
>>> bin(10)
'0b1010'
>>> bin(-10)
'-0b1010'
  • Execute a operação AND no valor para obter a forma do complemento (8 bits: & 0b11111111, 16 bits: & 0b111111111111111111, ...)
>>> bin(10&0b11111111)
'0b1010'
>>> bin(-10&0b11111111)
'0b11110110'
  • Formato universal
# 获得8位补码
>>> bin(10&int('1'*8,2))
'0b1010'
>>> bin(-10&int('1'*8,2))
'0b11110110'

# 获得32位补码
>>> bin(-10&int('1'*32,2))
'0b11111111111111111111111111110110'
>>> bin(10&int('1'*32,2))
'0b1010'

3. Bit operação

http://www.361way.com/bitwise-operators/5778.html

Para ser atualizado

Publicado 26 artigos originais · ganhou 13 · visualizações 7292

Acho que você gosta

Origin blog.csdn.net/original_recipe/article/details/90259002
Recomendado
Clasificación