HispaMSX

RE: dudas asm z80

2003-05-07 11:30:02
RLCA
RLCA
RLCA

CY<<76543210   
    >------^

ahorrando 3 bytes.

Uhm...si quiero mover a la derecha seria RRCA no?
ademas..esto no mueve..esto rota, de manera que los bits que salen 
por la derecha, entran por la izquierda...no? por lo que si lo que 
busco es dividir el numero por bits_que_muevo_a_la_derecha^2, rotar 
no es la solucion....creo vaya :P...insultadme si me equivoco ( 
pero 
no mucho )

Puff, tienes razon, estaba pensado en multiplicar, sorry. 


Gracias igualmente...la rutina que estoy haciendo requiere ser 
rapida..por lo que un ahorro de bytes seria crucial...

.....

si quiero que el bit numero x (guardado en (var)) , de 'a' se ponga 
a 
uno:

se me ocurre esto,porque no creo que sea posible lo de la variable 
directamente:

; SET (var),A
; var=[0,7]

PUSH AF
LD   A,[VAR]
LD   B,A
LD   A,0
SCF

NBIT:

RLA
DJNZ NBIT

LD   B,A
POP  AF
OR   B

Es "optimizable" :) pero espero que compense el error anterior... y 
no me hagas tampoco mucho caso , esta hecho de cabeza. Si algo esta 
mal tambien podeis insultarme.


Un principiante.

Nos vemos en los bares.











Nos vemos...


<Anterior en la conversación] Conversación actual [Siguiente en la conversación>