Operaciones de Bits en Delphi
Hola amigos.
Alguien me podría decir que significa esto? Gracias |
Recuerda poner los tags al código fuente, ejemplo:
Gracias :) |
En el apuro se me paso, lo lamento.
|
Revisa esto: Delphi Bascis: Shr command
|
jars,
Cita:
Te comento : gNumber es desplazado 8 bits a la derecha con SHR, luego al resultado obtenido se le aplica una operación AND con 255 y al final se le suma 22, esto es algo muy específico y el significado práctico depende del algoritmo que implemente este resultado. Revisa esta información: Espero sea útil :) Nelson. |
B4 := ((gNumber shr 8) and $FF) + 22;
Bueno, si mal no recuerdo, eso significa que al número gnumber, en binario, lo 'rota' hacia la derecha (shr) 8 posiciones (desplaza los bits). Luego hace un 'and' con 255 en binario (FF en hexa) (1 and 1=1, 0 and 0=0, etc.) Al resultado, finalmente, se le suma 22 |
Se me adelantó nlsgarcia
:) |
Hola Jars.
Sumando algo a lo que bíen han explicado los compañeros, primero definimos estos datos: Código:
shr (desplaza bits a la derecha) Código:
(gNumber shr 8); 01110111 shr 8 = 0 Saludos :) |
Gracias a todos por responder.
Ecfisa, con el ejemplo me aclaraste todo. Saludos |
Aunque es tarde ya...
Por poner algo distinto Un solo desplazamiento a la derecha es similar a dividir por 2 Un solo desplazamiento a la izda es similar a multiplicar por 2. (a div 4) es similar a (a shr 2)-> instrucción mas rápida creo. :) Feliz Año 2015 después de la resaca. |
Cita:
Un ejemplo con tu explicación: Cita:
|
La franja horaria es GMT +2. Ahora son las 07:41:31. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi