SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
OPERADORES A NIVEL DE BITS EN
APLICACIONES WEB Y SU
UTILIZACIÓN EN LA DOMÓTICA CON
RASPBERRY PI
Bitwise operators in Web applications and its use for
home automation applications with Raspberry Pi
Autores:
MsC. Henry Raúl González Brito, MsC.Dainys Gainza Reyes
Universidad de las Ciencias Informáticas
email: henryraul@uci.cu
Domótica
Agrupan un conjunto de tecnologías en la creación de
sistemas para automatizar las operaciones de recintos
cerrados como oficinas, viviendas o un auto.
• Gestión energética
• Seguridad
• Accesibilidad
• Confort
• Gestión de diferentes parámetros de funcionamientos de manera
remota, tanto desde el interior como desde el exterior
Internet de las Cosas
• La interconexión a través de internet de dispositivos como
electrodomésticos, maquinarias, sensores.
• Producción de Datos y su aplicación inteligente por los
dispositivos.
• Interrelaciones:
• Dispositivo – Dispositivo
• Persona – Dispositivo
• Dispositivo - Persona
Internet de las Cosas
Nevera realizando compras a través de
internet, sugiriendo platos a preparar y
chateando con el dueño a través de LINE.
Autos que se controlan a través de
Internet e informan de sus parámetros de
funcionamiento.
Red de sensores en un bosque, avisando
por Twitter a los guardabosques si hay un
incendio.
Características importantes
• Hardware (Bajo Costo, Consumo de Energía
Discreto, Inteligente, Dimensiones reducidas)
• Datos (Producción continua de datos, Big Data, uso
de estos)
• Velocidad de respuesta (Percepción del usuario)
• Interfaz de Usuario(Simple y Directa)
Raspberry Pi
• Computador de bajo Costo Creado para estimular el
aprendizaje de la programación desde edades tempranas
en el Reino Unido.
• CPU 700 MHz, RAM 512 MB, no trae Almacenamiento
Interno ni Fuente de Alimentación.
• O.S Linux Raspbian(Debian), RISC OS 5, Arch Linux
ARM, Pidora, entre otros.
Puertos
USB
(MOUSE Y
TECLADO)
Salida VGA
(Monitor TV)
Puerto SD Card Almacenamiento (SD 8 GB)
Puerto de
Alimentación 5V
Micro USB
Puerto de
Red RJ-45
GPIO
GPIO (General Purpose Input/Output)
 Configurados para ser de entrada o de salida.
 Pueden activarse o desactivarse.
 Leer valores de entrada y salida.
Capa de Presentación
Javascript/AJAX
Capa de Lógica de Negocio
PHP 5.4
RPi.GPIO
Capa de Hardware
~220 V
• Actúan sobre los bits individuales de la representación
binaria de un número entero sin signo.
• Operaciones soportadas directamente por el CPU por lo
que son operaciones muy rápidas.
Posición
Operadores a nivel de bits
Operaciones bit a
bit
Operaciones de
Desplazamiento
Operaciones de
Rotación
7 6 5 4 3 2 1 0
0 0 0 1 0 0 0 0
Valor
Aplicaciones en la Domótica
• Compresión de datos.
• Incremento en la velocidad de las operaciones.
• Codificación más simple.
7 6 5 4 3 2 1 0
0 0 0 1 0 0 0 0
Encendido/Apagado Abierto/cerrado 0-31 ºC
Operadores a nivel de bits en los
Lenguajes de Programación
Lenguaje de Programación AND OR NOT XOR
Python & | ~ ^
JavaScript & | ~ ^
PHP & | ~ ^
Aplicación del operador AND
Comprobar el
estado de un bit.
7 6 5 4 3 2 1 0
0 0 0 1 0 0 0 0
Bit de Interés
0 0 0 0 0 1 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0Apagado de bits.
Extracción de bit.
Aplicación del operador XOR
Invertir selectivamente
los bits de un número
entero
7 6 5 4 3 2 1 0
0 0 0 1 0 0 0 0
Bit de Interés
0 0 0 0 0 1 0 0
Ejemplo XOR
00000110 (6)
XOR 00000010 (2)
---------------------
00000100 (4)
Lámpara L en la Posición 1:
Máscara de la Lámpara L:
00000100
00000010 (2)
00000100 (4)
XOR 00000010 (2)
----------------------
00000110 (6)
A
B C
Cambio de estado con XOR
1.<input id="LAMP1" type=image src="ON.ico“ onclick="set_state(2)">
CAPA DE PRESENTACIÓN
CAPA DE LÓGICA DE NEGOCIO
3.$datumToWrite = $statusDatum ^ $datum;
2.xmlhttp.open ("GET","actualizador.php?st="+st);
Lámpara Máscara
L0 00000001
L1 00000010
L3 00000100
Actualización de estado con AND
5. stateNumberLEDTmp = stateDatum & 2;
if (stateNumberLEDTmp==0){
document.getElementById("LAMP1").src="OFF.ICO";
}else{
document.getElementById("LAMP1").src="ON.ICO";
}
4. GPIO.output(4, ((statusdatum&2)>0))
CAPA DE LÓGICA DE NEGOCIO
CAPA DE PRESENTACIÓN
Conclusiones
• Incremento en las aplicaciones de domótica y para la
Internet de las Cosas.
• La utilización de los operadores a nivel de bit en
aplicaciones Web de domótica puede contribuir a
disminuir código, simplificar las operaciones, disminuir el
volumen de datos y aumentar la velocidad de respuesta
en aplicaciones de domótica.
OPERADORES A NIVEL DE BITS EN
APLICACIONES WEB Y SU
UTILIZACIÓN EN LA DOMÓTICA CON
RASPBERRY PI
Bitwise operators in Web applications and its use for
home automation applications with Raspberry Pi
Autores:
MsC. Henry Raúl González Brito, MsC.Dainys Gainza Reyes
Universidad de las Ciencias Informáticas
email: henryraul@uci.cu

Más contenido relacionado

Similar a OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTICA CON RASPBERRY PI - Using of Operators Bitwise in Web Applications of Home Automation with Raspberry Pi

Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboards
Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboardsTaller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboards
Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboardsSofia2 Smart Platform
 
Rabbit microcontroladores
Rabbit microcontroladoresRabbit microcontroladores
Rabbit microcontroladoresMartín E
 
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...Victor Asanza
 
microcontroladores.ppt
microcontroladores.pptmicrocontroladores.ppt
microcontroladores.pptFreddyEspejo3
 
Aula Virtual utilizando utilizando Conference XP de Microsoft
Aula Virtual utilizando utilizando Conference XP de MicrosoftAula Virtual utilizando utilizando Conference XP de Microsoft
Aula Virtual utilizando utilizando Conference XP de MicrosoftJulián Santiago Bruno
 
Barcamp 2015 - Integración de proyectos embebidos utilizando Arduino, Raspbe...
Barcamp 2015 -  Integración de proyectos embebidos utilizando Arduino, Raspbe...Barcamp 2015 -  Integración de proyectos embebidos utilizando Arduino, Raspbe...
Barcamp 2015 - Integración de proyectos embebidos utilizando Arduino, Raspbe...Carlos Camacho
 
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...Victor Asanza
 
Proyecto mecatronica industrial control de servomotores
Proyecto mecatronica industrial control de servomotoresProyecto mecatronica industrial control de servomotores
Proyecto mecatronica industrial control de servomotoresAdrián Fernández Samalea
 
Microcontroladores en robtica mvil
Microcontroladores en robtica mvilMicrocontroladores en robtica mvil
Microcontroladores en robtica mvilEdwin Drx
 
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886Victor Asanza
 
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15iBeacon - Conectar el mundo real con experiencias móviles - Freakend15
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15José Manuel García García
 
Sistema de identificación inalámbrica para automotores
Sistema de identificación inalámbrica para automotoresSistema de identificación inalámbrica para automotores
Sistema de identificación inalámbrica para automotoresDiego Eslava
 

Similar a OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTICA CON RASPBERRY PI - Using of Operators Bitwise in Web Applications of Home Automation with Raspberry Pi (20)

Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboards
Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboardsTaller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboards
Taller IoT: desarrollo visual en Sofia2 con Raspberry Pi, Node-RED y dashboards
 
Rabbit microcontroladores
Rabbit microcontroladoresRabbit microcontroladores
Rabbit microcontroladores
 
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, TALLER RESUELTO 1ra EVALUACIÓN (2019 2do ...
 
microcontroladores.ppt
microcontroladores.pptmicrocontroladores.ppt
microcontroladores.ppt
 
Asterisk de las cosas
Asterisk de las cosasAsterisk de las cosas
Asterisk de las cosas
 
Elvis ii
Elvis iiElvis ii
Elvis ii
 
Aula Virtual utilizando utilizando Conference XP de Microsoft
Aula Virtual utilizando utilizando Conference XP de MicrosoftAula Virtual utilizando utilizando Conference XP de Microsoft
Aula Virtual utilizando utilizando Conference XP de Microsoft
 
Barcamp 2015 - Integración de proyectos embebidos utilizando Arduino, Raspbe...
Barcamp 2015 -  Integración de proyectos embebidos utilizando Arduino, Raspbe...Barcamp 2015 -  Integración de proyectos embebidos utilizando Arduino, Raspbe...
Barcamp 2015 - Integración de proyectos embebidos utilizando Arduino, Raspbe...
 
Trabajo plus (1)
Trabajo plus (1)Trabajo plus (1)
Trabajo plus (1)
 
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN B RESUELTA 1er PARCIAL (2019 2do ...
 
Proyecto mecatronica industrial control de servomotores
Proyecto mecatronica industrial control de servomotoresProyecto mecatronica industrial control de servomotores
Proyecto mecatronica industrial control de servomotores
 
Telematica
TelematicaTelematica
Telematica
 
Microcontroladores en robtica mvil
Microcontroladores en robtica mvilMicrocontroladores en robtica mvil
Microcontroladores en robtica mvil
 
DiseñO De Red
DiseñO De RedDiseñO De Red
DiseñO De Red
 
pic16f877-con-mikroc.pdf
pic16f877-con-mikroc.pdfpic16f877-con-mikroc.pdf
pic16f877-con-mikroc.pdf
 
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
⭐⭐⭐⭐⭐ (Práctica 6) DESARROLLO DE APLICACIONES CON PIC16F886
 
Robotica2
Robotica2Robotica2
Robotica2
 
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15iBeacon - Conectar el mundo real con experiencias móviles - Freakend15
iBeacon - Conectar el mundo real con experiencias móviles - Freakend15
 
Proceso de señal
Proceso de señalProceso de señal
Proceso de señal
 
Sistema de identificación inalámbrica para automotores
Sistema de identificación inalámbrica para automotoresSistema de identificación inalámbrica para automotores
Sistema de identificación inalámbrica para automotores
 

Más de Henry Raúl González Brito

Estudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererEstudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererHenry Raúl González Brito
 
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...Henry Raúl González Brito
 
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...Henry Raúl González Brito
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisHenry Raúl González Brito
 
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISCONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISHenry Raúl González Brito
 

Más de Henry Raúl González Brito (20)

Estudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererEstudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado referer
 
10 Principales Controles Proactivos de OWASP
10 Principales Controles Proactivos de OWASP 10 Principales Controles Proactivos de OWASP
10 Principales Controles Proactivos de OWASP
 
Information Gathering | OWASP
Information Gathering | OWASPInformation Gathering | OWASP
Information Gathering | OWASP
 
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
 
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
 
Aula 5 | LABORATORIO 1. Solução
Aula 5 | LABORATORIO 1. SoluçãoAula 5 | LABORATORIO 1. Solução
Aula 5 | LABORATORIO 1. Solução
 
Aula 5 | LABORATORIO 1
Aula 5 | LABORATORIO 1Aula 5 | LABORATORIO 1
Aula 5 | LABORATORIO 1
 
Aula 3 | Registros e Funções
Aula 3 | Registros e FunçõesAula 3 | Registros e Funções
Aula 3 | Registros e Funções
 
Aula 4 | Funções
Aula 4 | Funções Aula 4 | Funções
Aula 4 | Funções
 
Aula 2 | Vetores
Aula 2 | VetoresAula 2 | Vetores
Aula 2 | Vetores
 
Aula 1 | Introdução a C++
Aula 1 | Introdução a C++Aula 1 | Introdução a C++
Aula 1 | Introdução a C++
 
Tema 4 | Sessão
Tema 4 | SessãoTema 4 | Sessão
Tema 4 | Sessão
 
Tema 3 | Formulários
Tema 3 | FormuláriosTema 3 | Formulários
Tema 3 | Formulários
 
Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)
 
Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)
 
Tema 1 | Introdução a PHP
Tema 1 | Introdução a PHPTema 1 | Introdução a PHP
Tema 1 | Introdução a PHP
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores Digitais
 
A FUNÇÃO SOCIAL DO ENGENHEIRO
A FUNÇÃO SOCIAL DO ENGENHEIROA FUNÇÃO SOCIAL DO ENGENHEIRO
A FUNÇÃO SOCIAL DO ENGENHEIRO
 
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISCONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
 
História da engenharia
História da engenhariaHistória da engenharia
História da engenharia
 

OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTICA CON RASPBERRY PI - Using of Operators Bitwise in Web Applications of Home Automation with Raspberry Pi

  • 1. OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTICA CON RASPBERRY PI Bitwise operators in Web applications and its use for home automation applications with Raspberry Pi Autores: MsC. Henry Raúl González Brito, MsC.Dainys Gainza Reyes Universidad de las Ciencias Informáticas email: henryraul@uci.cu
  • 2. Domótica Agrupan un conjunto de tecnologías en la creación de sistemas para automatizar las operaciones de recintos cerrados como oficinas, viviendas o un auto. • Gestión energética • Seguridad • Accesibilidad • Confort • Gestión de diferentes parámetros de funcionamientos de manera remota, tanto desde el interior como desde el exterior
  • 3. Internet de las Cosas • La interconexión a través de internet de dispositivos como electrodomésticos, maquinarias, sensores. • Producción de Datos y su aplicación inteligente por los dispositivos. • Interrelaciones: • Dispositivo – Dispositivo • Persona – Dispositivo • Dispositivo - Persona
  • 4. Internet de las Cosas Nevera realizando compras a través de internet, sugiriendo platos a preparar y chateando con el dueño a través de LINE. Autos que se controlan a través de Internet e informan de sus parámetros de funcionamiento. Red de sensores en un bosque, avisando por Twitter a los guardabosques si hay un incendio.
  • 5. Características importantes • Hardware (Bajo Costo, Consumo de Energía Discreto, Inteligente, Dimensiones reducidas) • Datos (Producción continua de datos, Big Data, uso de estos) • Velocidad de respuesta (Percepción del usuario) • Interfaz de Usuario(Simple y Directa)
  • 6. Raspberry Pi • Computador de bajo Costo Creado para estimular el aprendizaje de la programación desde edades tempranas en el Reino Unido. • CPU 700 MHz, RAM 512 MB, no trae Almacenamiento Interno ni Fuente de Alimentación. • O.S Linux Raspbian(Debian), RISC OS 5, Arch Linux ARM, Pidora, entre otros.
  • 7. Puertos USB (MOUSE Y TECLADO) Salida VGA (Monitor TV) Puerto SD Card Almacenamiento (SD 8 GB) Puerto de Alimentación 5V Micro USB Puerto de Red RJ-45 GPIO
  • 8. GPIO (General Purpose Input/Output)  Configurados para ser de entrada o de salida.  Pueden activarse o desactivarse.  Leer valores de entrada y salida.
  • 10. Capa de Lógica de Negocio PHP 5.4 RPi.GPIO
  • 12. • Actúan sobre los bits individuales de la representación binaria de un número entero sin signo. • Operaciones soportadas directamente por el CPU por lo que son operaciones muy rápidas. Posición Operadores a nivel de bits Operaciones bit a bit Operaciones de Desplazamiento Operaciones de Rotación 7 6 5 4 3 2 1 0 0 0 0 1 0 0 0 0 Valor
  • 13. Aplicaciones en la Domótica • Compresión de datos. • Incremento en la velocidad de las operaciones. • Codificación más simple. 7 6 5 4 3 2 1 0 0 0 0 1 0 0 0 0 Encendido/Apagado Abierto/cerrado 0-31 ºC
  • 14. Operadores a nivel de bits en los Lenguajes de Programación Lenguaje de Programación AND OR NOT XOR Python & | ~ ^ JavaScript & | ~ ^ PHP & | ~ ^
  • 15. Aplicación del operador AND Comprobar el estado de un bit. 7 6 5 4 3 2 1 0 0 0 0 1 0 0 0 0 Bit de Interés 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0Apagado de bits. Extracción de bit.
  • 16. Aplicación del operador XOR Invertir selectivamente los bits de un número entero 7 6 5 4 3 2 1 0 0 0 0 1 0 0 0 0 Bit de Interés 0 0 0 0 0 1 0 0
  • 17. Ejemplo XOR 00000110 (6) XOR 00000010 (2) --------------------- 00000100 (4) Lámpara L en la Posición 1: Máscara de la Lámpara L: 00000100 00000010 (2) 00000100 (4) XOR 00000010 (2) ---------------------- 00000110 (6) A B C
  • 18. Cambio de estado con XOR 1.<input id="LAMP1" type=image src="ON.ico“ onclick="set_state(2)"> CAPA DE PRESENTACIÓN CAPA DE LÓGICA DE NEGOCIO 3.$datumToWrite = $statusDatum ^ $datum; 2.xmlhttp.open ("GET","actualizador.php?st="+st); Lámpara Máscara L0 00000001 L1 00000010 L3 00000100
  • 19. Actualización de estado con AND 5. stateNumberLEDTmp = stateDatum & 2; if (stateNumberLEDTmp==0){ document.getElementById("LAMP1").src="OFF.ICO"; }else{ document.getElementById("LAMP1").src="ON.ICO"; } 4. GPIO.output(4, ((statusdatum&2)>0)) CAPA DE LÓGICA DE NEGOCIO CAPA DE PRESENTACIÓN
  • 20. Conclusiones • Incremento en las aplicaciones de domótica y para la Internet de las Cosas. • La utilización de los operadores a nivel de bit en aplicaciones Web de domótica puede contribuir a disminuir código, simplificar las operaciones, disminuir el volumen de datos y aumentar la velocidad de respuesta en aplicaciones de domótica.
  • 21. OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTICA CON RASPBERRY PI Bitwise operators in Web applications and its use for home automation applications with Raspberry Pi Autores: MsC. Henry Raúl González Brito, MsC.Dainys Gainza Reyes Universidad de las Ciencias Informáticas email: henryraul@uci.cu