You are on page 1of 4

UNIVERSIDAD POLITCNICA

DE PUEBLA
ORGANISMO PBLICO
DESCENTRALIZADO
DEL ESTADO DE PUEBLA

ENMASCARAMIENTO DE BITS

DOCENTE: M.C. NORMA ANGELICA SERRANO DE


ITA

MATERIA: PROGRAMACION DE PERIFERICOS

ALUMNO: OBED SEBASTIAN HERNANDEZ


RIVADENEYRA

INGENIERIA EN MECATRONICA

CUARTO CUATRIMESTRE

ENMASCARAMIENTO
Este proceso consiste en convertir un patrn dado de bits en otro patrn mediante
una operacin lgica a nivel de bits. Para lograr esto se tiene el patrn original
como uno de los operados y el segundo operando ser la mscara empleada para
obtener la transformacin deseada.
El enmascaramiento es un proceso en el que un patrn dado de bits se convierte
en otro patrn por medio de una operacin lgica a nivel de bits. El patrn original
de bits es el primer de los operandos y el segundo operando es llamado mscara,
que es un patrn especialmente escogido que realiza la transformacin deseada.
Por ejemplo:
(int) A | 32, el nmero 32 se convierte en la mscara utilizada para convertir
cualquier letra mayscula en una letra minscula a travs de una operacin or (|).
(int) a & 65503,
el nmero 65503 se convierte en la mscara utilizada para
convertir cualquier letra minscula en una letra mayscula a travs de una
operacin and (&).
Hay varios tipos de operaciones de enmascaramiento (como ya se vio en los
ejemplos anteriores). Por ejemplo, una porcin del patrn dado puede copiarse a
una nueva palabra rellenando el resto de la nueva palabra con ceros. As, una
parte del patrn original ser enmascarado del resultado final. El operador &
(and) ser el utilizado para este tipo de operacin. Por ejemplo:
a= 0x6db7, extraer los 6 bits mas a la derecha de este valor y asignarlos a la
variable entera b. Asignar ceros a los 10 bits de b mas a la izquierda:
b= a & 0x3f, en este caso el valor 0x3f es la mscara
b= 0x37
01101101 10110111 (a)
00000000 00111111 (mscara)
________________
00000000 00110111 (b)

Otro tipo de enmascaramiento permite copiar una porcin de un patrn de bits


dado a una nueva palabra, rellenando el resto de la palabra con unos. Para ser
esto se utiliza el operador | (or). Por ejemplo:
a=0x6db7, transformar el patrn de bits correspondiente de bits en otro en el cual
los 8 bits mas a la derecha sean unos y los 8 bits a la izquierda conserven su valor
original. Asignar este nuevo valor a la variable b.
b= a | 0xff, en este caso el valor 0xff es la mscara
b= 0x6dff
01101101 10110111 (a)
00000000 11111111 (mscara)
________________
01101101 11111111 (b)
Se puede copiar una porcin de un patrn dado de bits a una nueva palabra,
mientras que el resto de los bits se invierten en una nueva palabra. Para este tipo
de enmascaramiento se utiliza el operador ^ (xor). Por ejemplo:
a=0x6db7. Invertir los 8 bits de la derecha y preservar los 8 bits de la izquierda.
Este nuevo patrn asignarlo a la variable b.
b= a ^ 0xff, en este caso el valor 0xff es la mscara
b= 0x6d48
01101101 10110111 (a)
00000000 11111111 (mscara)
________________
01101101 01001000 (b)
La operacin ^ puede usarse repetidamente como un interruptor para cambiar el
valor de un bit particular dentro de una palabra. Por ejemplo:

a=0x6db7. Invertir el valor del bit 2 (tercer bit por la derecha) dentro de a, si esta
operacin se hace repetidamente cambiar el 3 bit de la derecha de 1 a 0.
b=a ^ 0x4, el valor 0x4 es la mscara en este caso.

01101101 10110111 (a)


00000000 00000100 (mscara)
________________
01101101 10110011 (b = 0x6db3)
00000000 00000100 (mscara) se aplica nuevamente la mscara al resultado
obtenido
________________
01101101 10110111 (a) se obtiene el valor original

b= a ^ mascara
c= b ^ mascara
resultado final c = a

bibliografa

http://www.google.com.mx/url?
sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CC4QFjAC&url=http%3A%2F
%2Fkenapn.galeon.com
%2FManipulBitsMod.doc&ei=bKscVZrQM862yAT1toGABg&usg=AFQjCNG2p3ZQI
53HXElAJhcGIYMc2giTfw&sig2=ZSf99dSIY7Moytn2wYF3yA

http://tanis.lpi.tel.uva.es/~nacho/docencia/ing_ond_1/trabajos_06_07/io1/public_ht
ml/enascaramiento.htm

You might also like