8 de febrero de 2002

Pasar de hexadecimal a decimal

Una forma fácil de pasar números del sistema hexadecimal al sistema decimal y viceversa.

A partir de VFP 6 podemos pasar un número hexadecimal a decimal de una forma directa. Por ejemplo queremos convertir el número hexadecimal "FFFF" al sistema decimal:

? 0xFFFF

De la misma manera podemos pasar un número decimal al sistema hexadecimal utilizando la función TRANSFORM()

lnDec = 123
? TRANSFORM(lnDec,"@0")

A partir de esto, creamos las correspondientes funciones definidas por el usuario, que nos permiten la conversión de números de un sistema a otro:
*--------------------------------------------
FUNCTION Hex2Dec(tcHex)
  RETURN EVALUATE("0x"+ALLTRIM(tcHex))
ENDFUNC
*--------------------------------------------
FUNCTION Dec2Hex(tnDec)
  RETURN SUBSTR(TRANSFORM(tnDec,"@0"),3)
ENDFUNC
*--------------------------------------------

Luis María Guayán

No hay comentarios. :

Publicar un comentario