--- En hispamsx(_en_)yahoogroups(_punto_)com, Francisco Alvarez <Saeba@h...>
escribió:
"napalmsx <napalm@d...>" <napalm@d...> wrote on 06/05/2003
7:50:37:
Socorro XD
Juas!
Estoy aporreando rutinas y tengo una preguntilla....
Como funcionan las instrucciones de rotar? (rla,rra,sla, srl...etc)
El problema que tengo, es que en el manual de la zilog pone esto:
Necesitas el fabuloso manual de Z80 del Nestor (Mini Referencia
procesador Z80 y BIOS MSX).
Si vas a la RU dile que te lleve uno... (te aseguro que es la mejor
compra en aaaaaaños)... ^_^
SLR m ;m=r,(HL),(IX+d),(IY+d)
y no soy capaz de decifrar lo que intentan decirme :P
A ver, lo que te dice es que puedes hacer la operación SRL (Shift
Right Logic) usada con registros
de 8 bits (la r ésa), o con posiciones de memoria (donde apunte HL
o donde apunten los registros
índices más el desplazamiento).
[Ejemplos de operaciones de desplazamiento (SHIFT)).
Ejemplo:
SLA B ; Mueves a la izquierda 1 posición los bits de B. El bit 7
antiguo pasa al Carry y le entra un 0
por la derecha
SRA (HL) ; Mueves a la derecha 1 posición los bits del número
que está donde apunta HL. El bit 7
se copiará en sí mismo (además de pasar al bit 6) y el bit 0 pasará
al bit de carry).
SRL (IX + 2) ; Mueves a la derecha 1 posición los bits del
número que está donde apunta el valor
de IX más 2 posiciones. Aqué donde está el bit 7 entra un 0 y el
bit 0 pasa al Carry.
No te explico las de rotación que tengo prisa por ir a buscar unos
expandeiros que bla bla bla...
(aduanas esperadme!).
Y lo dicho, y no es porque el HAntonio venda más, pero el manual
ése va de coña para
principiantes... te lo digo por experiencia....
Y si no lo ves claro con un libro de Z80 píllate el de algún otro
procesador... seguro que de 8086 los
hay a patadas y, total, las rotaciones y los desplazamientos son
casi iguales a la hora de usarse (las
de MES más simples).
por ejemplo, si quiero dividir un numero 'a' por 8, solo tendria
que "mover" los bits a la derecha 3 posiciones
a=11100000 (224)-mover 3 bits a la derecha>a=00011100 (224/8=28)
¿pero el codigo z80 como seria?
SRA A
SRA A
SRA A
^_^
OOOOH!!! gracias gracias gracias !!!
pero...solo puede mover los bits de 1 en 1?
nestor! digo.. lider! quiero un manual de estos! cuanto vale?