• Lunes 18 de Noviembre de 2024, 15:43

Autor Tema:  Convertir Un Numero Hexadecimal A Su Valor Decimal  (Leído 17071 veces)

daredevil

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Convertir Un Numero Hexadecimal A Su Valor Decimal
« en: Sábado 10 de Julio de 2004, 06:42 »
0
Hola,
necesito saber como convertir un numero hexadecimal a decimal.. puesto que quiero imprimir en pantalla el numero decimal ..
es urgente!!!!!!


por favor alguien que me ayude!!!!! :blink:

amospi

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: Convertir Un Numero Hexadecimal A Su Valor Decimal
« Respuesta #1 en: Sábado 10 de Julio de 2004, 15:50 »
0
Hola DAREDEVIL

Para pasar un número exadecimal a decimal basta con utilizar la rutina para tal propósito llamada BIN_bcd que se encuentra en la librería Rutinas matemáticas de los manuales de la MICRICHIP en la sección de notas de aplicación.  Esta rutina entrega el número descompusto en unidades, decenas y centenas;  luego de tener dicho número descompuesto se convierte a código ASSCI sumandole a cada dígito el decimal 48 (30h en hexadecimal) y ya está el número listo para mostrarlo en pantalla.

Nota: esta rutina sirve para números menores o iguales a 255 (FFh);  para números mayores existen otras rutinas que tambien se encuentran en la misma sección.

Le anexo la rutna BIN_bcd (Debe cargar el número a convertir en el registro unidad y luego llamar la rutina BIN_bcd)

;==========================================
;  RUTINA DE CONVERSION DE BINARIO A BCD    
;==========================================
;
Bin_BCD   clrf   Decena      ; limpiar decenas
   clrf   Centena      ; limpiar centenas
   movlw   0x64      
otra   subwf   unidad,1                   ; restarle cien al valor unidad
   btfss   status,cy   
   goto   sum
   incf   Centena,1
   goto   otra

sum   addwf   unidad,1
   movlw   0x0a
repite   subwf   unidad,1
   btfss   status,cy
   goto   sum1
   incf   Decena,1   
   goto   repite

sum1   addwf   unidad,1
   return
;

Atte

amospi@hotmail.com

karen81

  • Miembro MUY activo
  • ***
  • Mensajes: 119
    • Ver Perfil
Re: Convertir Un Numero Hexadecimal A Su Valor Decimal
« Respuesta #2 en: Martes 13 de Julio de 2004, 01:49 »
0
;) amospi, si ves los mensajes de este foro te daras cuenta que estamos hablando de lenguaje ensamblador para microprocesadores y no para microcontroladores como los PICs (hay un foro donde discutimos de Microcontroladores)
 :) No te digo esto con mala intencion, ni para iniciar una discusion, es solo para informarte :hola:

 :) Ahora con respecto a la pregunta de Daredevil
Citar
Hola,
necesito saber como convertir un numero hexadecimal a decimal.. puesto que quiero imprimir en pantalla el numero decimal ..
es urgente!!!!!!


por favor alguien que me ayude!!!!! 
si quieres imprimir en pantalla no debes pasarlo a decimal solamente si no tambien a ASCII,
cuando tengas tu numero en hexadecimal

MOV AL,NUM  ;numero en hexadecimal
AAA  ;Le haces el ajuste decimal
ADD AL,30 ; le sumas 30 y ya esta en ASCII (listo para imprimirse en pantalla)
No basta tener buen ingenio; lo principal es aplicarlo bien.