为什么每次只能输出第一位十六进制数,比如3F输出3;而不是3+15后的结果(结果应是18))

long Result;
long ASC_0 = StrASCII("0");
long ASC_9 = StrASCII("9");
long ASC_A = StrASCII("A");
long ASC_F = StrASCII("F");
long ASC_Get_str;

float Count;
float Count_1;
float sLength;

string Get_str;
long Get_Value;
\本站点\Output=0;
while( Count <= sLength)

Get_str=StrMid(\本站点\Input,count,1);
ASC_Get_str = StrASCII(Get_str);
if( ASC_0<=ASC_Get_str&&ASC_Get_str<=ASC_9)
Get_Value = StrASCII(Get_str) - ASC_0;

if( ASC_A<=ASC_Get_str&&ASC_Get_str<=ASC_F)
    Get_Value = StrASCII(Get_str) - ASC_A+10Result =  Get_Value;
Count_1 =  Count;
while(Count_1<sLength)
{
     Result = Result * 16;
      Count_1 =  Count_1+1;
 }
 \\本站点\Output = \\本站点\Output +  Result;
    Count =  Count + 1;

}

代码能用代码块贴出来吗?中间怎么那么多中文,看着费劲
StrASCII(Get_str)的功能是什麽?