Convertir Hexadecimal En Decimal


Objetivo: Convertir Hexadecimal En Decimal
Hola a todos.
Luego de buscar un largo rato en el foro y en la ayuda de gambas no logre encontrar la forma de Convertir Hexadecimal en Decimal.
Tengo los siguientes números por ejemplo:
0x0
0x100
0x2000
0x2008

Nota: dichos valores provienen de una librería que decodifica archivos binarios y según el manual de dicha librería el valor debería ser "short 1 bit-encoded unsigned short"

¿Alguna idea?

Perfil MP  
Objetivo: Re: Convertir Hexadecimal En Decimal
tincho escribió:  
... en la ayuda de gambas no logre encontrar la forma de Convertir Hexadecimal en Decimal.
Tengo los siguientes números por ejemplo:
0x0
0x100
0x2000
0x2008

Parto de la premisa de que debes convertir a decimal aquellos números como los escribiste en la representación hexadecimal usada por el C.
Si tienes que convertir aquella representación, significa que está expresa en tipo String.
Tienes que eliminar el simbolo "x" y luego convertir de manera gambasiana.
Es decir:
Public Sub Main()

Dim s As String = "0x100"
Dim c As Short

s = Replace(s, "x", "0")

c = Val("&" & s)

''...o si prefieres:
' s = Replace(s, "0x", "&")
' c = Val(s)

Print c

End






tincho escribió:  
unsigned short"

...como sabes gambas no tiene el typo Unsigned Short.

última edición por vuott el Lunes, 11 May 2020, 18:40; editado 2 veces
Perfil MP  
Objetivo: Re: Convertir Hexadecimal En Decimal
vuott escribió:  
tincho escribió:  
... en la ayuda de gambas no logre encontrar la forma de Convertir Hexadecimal en Decimal.
Tengo los siguientes números por ejemplo:
0x0
0x100
0x2000
0x2008

Parto de la premisa de que debes convertir a decimal aquellos números como los escribiste en la representación hexadecimal usada por el C.
Si tienes que convertir aquella representación, significa que está expresa en tipo String.
Tienes que eliminar el simbolo "x" y luego convertir de manera gambasiana.
Es decir:
Public Sub Main()
Dim s As String = "0x100"
Dim c As Short
s = Replace(s, "x", "0")
c = Val("&" & s)
Print c
End

tincho escribió:  
unsigned short"

...como sabes gambas no tiene el typo Unsigned Short.

Gracias Vuott. Siempre estas al pie del cañón.

Perfil MP  
Objetivo: Re: Convertir Hexadecimal En Decimal
Mira que he integrado mi código !

Perfil MP  
Objetivo: Re: Convertir Hexadecimal En Decimal
Vuott, perfecto si, he visto (y usado) tu código (el de este post y muchos que pones en el foro tambien).
Quedo así:
sVal = Replace(sVal, "0x", "&00")
i = Val(sVal)

Gracias otra vez.
Saludos.

Perfil MP  
Objetivo: Re: Convertir Hexadecimal En Decimal
tincho escribió:  
Quedo así:
sVal = Replace(sVal, "0x", "&00")
i = Val(sVal)

ok

última edición por vuott el Lunes, 11 May 2020, 21:53; editado 2 veces
Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 3.5605s (PHP: -98% SQL: 198%)
Consultas SQL: 47 - Debug off - GZIP Activado