"napalmsx <napalm(_en_)demoscener(_punto_)org>"
<napalm(_en_)demoscener(_punto_)org> 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
^_^