Karoshi MSX Community
05 de Julio de 2021, 01:00:02 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: [1]
  Imprimir  
Autor Tema: suma de un numero de 8 bits con signo a un registro de 16bits  (Leído 3380 veces)
0 Usuarios y 1 Visitante están viendo este tema.
aorante
Karoshi Maniac
****
Mensajes: 451


nuTella Power!


WWW Email
« : 13 de Febrero de 2011, 11:55:52 am »

Necesito sumar en assembler un numero con signo (byte) a un registro de 16bits, pero no se como hacerlo.  Huh

alguien sabe?
En línea

--------------------------------- ------ ----- --- -- -
aorante/303bcn
http://aorante.blogspot.com
http://twitter.com/#!/aorante
http://303bcn.wordpress.com/
--------------------------------- ------ ----- --- -- -
SapphiRe_MSX
Visitante
« Respuesta #1 : 13 de Febrero de 2011, 12:28:40 pm »

Necesito sumar en assembler un numero con signo (byte) a un registro de 16bits, pero no se como hacerlo.  Huh

A ver si me sale de cabeza...

Entrada:

HL número de 16 bits
A número de 8 bits con signo

Código:
push bc ;guardamos bc porque lo vamos a engorrinar
ld b,0
ld c,a
bit 7,c
jp z,@@suma
dec b
@@suma:
add hl,bc
pop bc ; recuperamos bc tras engorrinarlo

Salida:

HL contiene el resultado
Ningún otro registro se ve modificado Cheesy

Espero que funcione y te valga Tongue
« Última modificación: 13 de Febrero de 2011, 12:31:29 pm por SapphiRe » En línea
Mortimer
Karoshi Lover
***
Mensajes: 216


WWW
« Respuesta #2 : 13 de Febrero de 2011, 04:38:14 pm »

Que rodeos hay que dar a veces para hacer algo que parece sencillo con nuestro modesto Z80  Roll Eyes En el 8086 por ejemplo ya hay una instrucción exprofeso para extender byte a word (CBW)
En línea
aorante
Karoshi Maniac
****
Mensajes: 451


nuTella Power!


WWW Email
« Respuesta #3 : 13 de Febrero de 2011, 05:05:36 pm »

Espero que funcione y te valga Tongue

Gracias!  Cheesy

ya te comentaré a lo largo de la semana que viene, cuando lo pruebe.
Es para el player que estoy programando de la version 2 del PSGed. Sobre la frecuencia dada correspondiente a la nota, permito aplicarle un offset (el byte con signo), que podrá modificarse con un controlador de pots (paddles), dando más juego para hecer cosas en directo.   Grin
En línea

--------------------------------- ------ ----- --- -- -
aorante/303bcn
http://aorante.blogspot.com
http://twitter.com/#!/aorante
http://303bcn.wordpress.com/
--------------------------------- ------ ----- --- -- -
Páginas: [1]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!