Título: suma de un numero de 8 bits con signo a un registro de 16bits Publicado por: aorante en 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. ???
alguien sabe? Título: Re: suma de un numero de 8 bits con signo a un registro de 16bits Publicado por: SapphiRe_MSX en 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. ??? 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 :D Espero que funcione y te valga :P Título: Re: suma de un numero de 8 bits con signo a un registro de 16bits Publicado por: Mortimer en 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 ::) En el 8086 por ejemplo ya hay una instrucción exprofeso para extender byte a word (CBW)
Título: Re: suma de un numero de 8 bits con signo a un registro de 16bits Publicado por: aorante en 13 de Febrero de 2011, 05:05:36 pm Espero que funcione y te valga :P Gracias! :D 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. ;D |