BTemplates.com

Diberdayakan oleh Blogger.

Pages

Pages - Menu

Popular Posts

Rabu, 28 November 2007

Konversi Hexadesimal ke Desimal dengan Visual Foxpro


&& FUNCTION Hex2Dec untuk mengubah Hexadesimal menjadi desimal
&& Parameter :
&& _HexNum
&& Contoh :
&& Hex2Dec("FF") ==> 255
&& Hex2Dec("F1") ==> 241
&& Hex2Dec("10") ==> 16

FUNCTION Hex2Dec
PARAMETERS _HexNum
IF VARTYPE(_HexNum)="N"
        _HexNum=ALLTRIM((STR(_HexNum)))
ENDIF 
IF VARTYPE(_HexNum)<>"C"
        _HexNum=""
ENDIF
_Balik=0 
FOR kei=LEN(_HexNum) TO 1 STEP -1
        _Balik=_Balik+(Hex2DecTbl(SUBSTR(_HexNum,kei,1)))*16^(LEN(_HexNum)-kei)
NEXT 
RETURN _Balik

FUNCTION Hex2DecTbl
PARAMETERS __HexNum
IF VARTYPE(__HexNum)="N"
        __HexNum=ALLTRIM(STR(__HexNum))
ENDIF 
IF VARTYPE(__HexNum)<>"C"
        __HexNum=""
ENDIF 
__HexNum=UPPER(LEFT(__HexNum,1))
DO CASE 
        CASE __HexNum="0"
                __Balik=0
        CASE __HexNum="1"
                __Balik=1
        CASE __HexNum="2"
                __Balik=2
        CASE __HexNum="3"
                __Balik=3
        CASE __HexNum="4"
                __Balik=4
        CASE __HexNum="5"
                __Balik=5
        CASE __HexNum="6"
                __Balik=6
        CASE __HexNum="7"
                __Balik=7
        CASE __HexNum="8"
                __Balik=8
        CASE __HexNum="9"
                __Balik=9
        CASE __HexNum="A"
                __Balik=10
        CASE __HexNum="B"
                __Balik=11
        CASE __HexNum="C"
                __Balik=12
        CASE __HexNum="D"
                __Balik=13
        CASE __HexNum="E"
                __Balik=14
        CASE __HexNum="F"
                __Balik=15
ENDCASE 
RETURN __Balik

0 komentar:

Posting Komentar