![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Cita:
justo al reves ![]() |
|
#2
|
|||
|
|||
|
Si Señor si lo desplazas a la derecha divides por 2 y lo contrario multiplicas por dos.
Un Saludo. |
|
#3
|
|||
|
|||
|
OHH OHH perate Tolomeo.(rectifica)
Cita:
![]() Un Saludo. |
|
#5
|
|||
|
|||
|
Cita:
Ahora que leo tu comentario, me confundi en algo.No se si seoane se referia al desplazamiento de los bits a la derecha o a la izquierda que pasaria ante ese escenario o a la configuracion de un byte binario.(donde esta el menos significativo) ![]() Como tu dices nadie en un codigo asm se le ocurriria poner un binario,pensando que el menos significativo es el de la izquierda.El copilador entenderia otro valor. ![]() Un Saludo. |
|
#6
|
||||
|
||||
, es que no he usado shl y shr nunca .Normalmente cuando escribimos en papel un binario, el de mayor peso estará a la izquierda (tal y como ha escrito JoseFco), sin embargo en delphi no estaba yo muy seguro de la representación. Ya veo que sigue la misma notación, por tanto para resumir: (MSB = MOST SIGNIFICANT BIT, LSB = LESS SIGNIFICANT BIT) MSB 7 6 5 4 3 2 1 0 LSB.... shr = SHIFT RIGHT (desplazamiento a la derecha) = dividir por 2 shl = SHIFT LEFT (desplazamiento a la izquierda) = multiplicar por 2 Saludos a todos (yo también aprendo ).
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#7
|
||||
|
||||
|
Como curiosidad siempre me acordare de como mi profesor de electronica digital nos pregunto en un examen como multiplicar un numero por diez usando solamente un sumador (un chip que tiene dos entradas ,de 8 bits cada una, y una salida que es la suma de las dos entradas).
Todo un mundo el de los numeros binarios ![]() |
|
#8
|
|||
|
|||
|
Cita:
No entendi muy bien lo que les pregunto el profesor en ese examen.Tampoco se que quieres decir con usar un solo sumador. Pero se puede multiplicar por 10 usando una tecnica: por ejemplo: 0000 0010=2 2x10=20 no existe un solo bit que tenga el valor 20 pero si decimos 2x2=4 y luego 2x8=16 16+4=20 Como esta esto: si el 2 lo movemos un espacio a la izquierda tenamos 4 dejamos eso asi entonces tenemos 2x2=4 si movemos el 2 4 espacios a la izquierda tenemos 16 2x4=16 algo asi 0001 0100= 20 Se puede hacer esto con dos bytes y logras escalar mas. ![]() El mundo digital es muy lindo.Los humanos tenemos dos dedos, por eso contamos en decimal, los pinguinos solo tienen dos aletas por eso cuentan en binario y los marcianos tienen 16 dedos por eso cuentan en hexadecimal. ![]() Un Saludo. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|