martes, 13 de enero de 2015

Soluciones CodeCademy Python. Introducción a los operadores a nivel de bits.


Soluciones al tema de "Introducción a los operadores a nivel de bits" del curso de Python de la web Codecademy


3/14 - Hay que traducir los nombres de las variables al inglés para que no de error
one = 0b1
two = 0b10
three = 0b11
four = 0b100
five = 0b101
six = 0b110
seven = 0b111
eight = 0b1000
nine = 0b1001
ten= 0b1010
eleven = 0b1011
twelve = 0b1100

4/14
for x in range(1,6):
    print bin(x)

5/14
print int("11001001",2)

6/14
desplaza_derecha = 0b1100
desplaza_izquierda = 0b1
desplaza_derecha=desplaza_derecha >> 2
desplaza_izquierda=desplaza_izquierda << 2
print bin(desplaza_derecha)
print bin(desplaza_izquierda)

7/14
print bin(0b1110 & 0b0101)

8/14
print bin(0b1110 | 0b0101)

9/14
print bin(0b1110 ^ 0b0101)

10/14 -sólo ver-

11/14
def controla_bit4(num):
    mask = 0b1000
    pas = mask & num
    if pas > 0:
        return  "on"
    else:
        return "off"

12/14
mask = 0b100
print bin(a | mask)

13/14
mask_len = len(bin(a)) -2
mask = int("1"*mask_len,2)
desired = a ^ mask
print bin(desired)

14/14
def invierte_bit (numero, n):
 mask = (0b1 << (n-1))
 resultado = numero ^ mask
 return bin(resultado)

1 comentario: