Lunes 18 de Noviembre de 2024, 12:56
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
,, Una Cuestion,,,en Rotacion De Bits
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: ,, Una Cuestion,,,en Rotacion De Bits (Leído 4675 veces)
cybergatita
Miembro MUY activo
Mensajes: 154
,, Una Cuestion,,,en Rotacion De Bits
«
en:
Jueves 31 de Agosto de 2006, 20:34 »
0
que tal chicos,, hay alguna forma o alguna palabra reservada o funcion , que nos pueda servir para la rotacion de un numero porsupuesto binario. obviamente para el desplazamiento si la hay pero para la rotacion circular no encuentra alguna.
Saludos.
Tweet
chimps
Miembro MUY activo
Mensajes: 208
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #1 en:
Jueves 31 de Agosto de 2006, 20:55 »
0
no se me ocurre para que usar algo asi, por lo que puede ser que este diciendo cualquier cosa, pero podrias programar una funcion que use la matriz de rotacion para algo asi:
matriz(theta) =
| cos(theta) -sen(theta) |
| sen(theta) cos(theta) |
esto funcionara para vectores, pero supongo que podrias hacer que funcione para tu caso tambien, tomando pares de bits quizas...
-->
Mi BlogPersonal
cybergatita
Miembro MUY activo
Mensajes: 154
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #2 en:
Jueves 31 de Agosto de 2006, 21:27 »
0
mmmamm soy principiante :S
10000101 .. este numero rotado a la izquier 2 posiciones quedaria
10000110.... de esta manera
amm no se si lo que me recomiendas se pueda implementar asi.
gracias chimps
chimps
Miembro MUY activo
Mensajes: 208
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #3 en:
Jueves 31 de Agosto de 2006, 21:52 »
0
ahhhhhhh ahora entiendo lo que quisite decir con rotacion, olvidate de lo que te dije jajaa....
si entendi bien, queres hacer tipo:
1010010
luego de desplazar 2 bits hacia la derecha, quedaria:
1010100
o sea que da la vuelta una vez que llega a alguno de los extremos no?...
en C++ no hay operadores para eso pero si hay funciones en internet que hacen eso...tenes que buscar "bit rotation" o "circular shift" en google y vas a encontrarlos...
-->
Mi BlogPersonal
Max_D
Miembro MUY activo
Mensajes: 117
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #4 en:
Jueves 31 de Agosto de 2006, 22:19 »
0
Quizas podrias realizarlo en ensamblador, con la instruccion asm{...}. En ensamblador hay una instruccion para rotar bits a la izquierda y otra para rotarlos a la derecha.
cybergatita
Miembro MUY activo
Mensajes: 154
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #5 en:
Jueves 31 de Agosto de 2006, 23:31 »
0
encontre esto
http://david.tribble.com/text/c0xrot.htm
pero no logro entenderlo completamente.
ah en ensamblador,,, recuerda que soy principiante amigo Max_D :S
chimps
Miembro MUY activo
Mensajes: 208
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #6 en:
Jueves 31 de Agosto de 2006, 23:47 »
0
esta pagina es nada mas una propuesta del '98 para que se implemente esa funcionalidad al lenguaje C
-->
Mi BlogPersonal
chimps
Miembro MUY activo
Mensajes: 208
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #7 en:
Jueves 31 de Agosto de 2006, 23:55 »
0
estuve buscando y parece que lo mejor seria meter el codigo en assemnbler porque ya tiene formar de hacer esto (
http://usuarios.advance.com.ar/trimegis/CT09.TXT
)...yo honestamente no se muy bien como mezclar C con assembler, quizas Max_D te podria ayudar con este tema
-->
Mi BlogPersonal
Max_D
Miembro MUY activo
Mensajes: 117
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #8 en:
Viernes 1 de Septiembre de 2006, 00:09 »
0
En ensamblador existen las instrucciones RCL (rotacion a la izquierda con acarreo), RCR (rotacion a la derecha con acarreo), ROL (rotacion a la izquierda) y ROR (rotacion a la derecha). El acarreo simplemente es que el bit que se sale, ya sea por la izquierda o por la derecha, se pone en el otro lado, como si fuera circular.
Quedaria algo como asi:
Código: Text
asm{
mov ax, dato
lol ax, n
mov dato, ax
}
donde dato es lo que quieres rotar y n es el numero de veces que vas a desplazarlo. Espero haberte aclarado algo, tambien puedes mirar mas
aquí
cybergatita
Miembro MUY activo
Mensajes: 154
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #9 en:
Viernes 1 de Septiembre de 2006, 01:02 »
0
Parece que si, tambien ya estuve leyendo algo al respecto con assambler, pues gracias chimps por tu ayuda.
y bueno Max_D, mi duda ahora es, para c y c++ utilizo borland turbo version 3.1 y 3.0 en D.O.S, pero para programar en assambler que necesito.
(ya me anime hacerlo en assambler)
Max_D
Miembro MUY activo
Mensajes: 117
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #10 en:
Viernes 1 de Septiembre de 2006, 02:14 »
0
El ensamblador para el 8086 que yo he usado es
este
y
aqui
el juego de instrucciones. Espero que tengas suerte
cybergatita
Miembro MUY activo
Mensajes: 154
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #11 en:
Viernes 1 de Septiembre de 2006, 02:56 »
0
Gracias por todo
Bicholey
Moderador
Mensajes: 1234
Re: ,, Una Cuestion,,,en Rotacion De Bits
«
Respuesta #12 en:
Viernes 1 de Septiembre de 2006, 08:29 »
0
Definitivo lo mas facil es usar asm y como te han dicho rol y ror son las intrucciones adecuadas y faciles de implementar en c++...
[size=109]
LOS GATOS SIEMPRE CAEMOS DE PIE !!!
[/size]
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
,, Una Cuestion,,,en Rotacion De Bits