468,720 Members | 1,675 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,720 developers. It's quick & easy.

Convert Hex to Decimal in arraylist

Public ArrList As New ArrayList
Public bitvalue As Byte()

Public Sub addvalues()
Dim index As Integer
ArrList.Add(100)
ArrList.Add(200)
ArrList.Add(300)
ArrList.Add(400)
ArrList.Add(500)
For Each value As Integer In ArrList
bitvalue = BitConverter.GetBytes(value)

'I need to convert the Hex value back to its corresponding decimal
value and place it into the bitvalue (0) and bitvalue (1)

senddata(bitvalue(0), bitvalue(1))
Next
End Sub

Sep 26 '07 #1
10 4591
On Sep 26, 4:03 pm, cmdolcet69 <colin_dolce...@hotmail.comwrote:
Public ArrList As New ArrayList
Public bitvalue As Byte()

Public Sub addvalues()
Dim index As Integer
ArrList.Add(100)
ArrList.Add(200)
ArrList.Add(300)
ArrList.Add(400)
ArrList.Add(500)
For Each value As Integer In ArrList
bitvalue = BitConverter.GetBytes(value)

'I need to convert the Hex value back to its corresponding decimal
value and place it into the bitvalue (0) and bitvalue (1)

senddata(bitvalue(0), bitvalue(1))
Next
End Sub
Forget that popst...i was thinking of somthing else....sorry

Sep 26 '07 #2
"cmdolcet69" <co************@hotmail.comschrieb
Public ArrList As New ArrayList
Public bitvalue As Byte()

Public Sub addvalues()
Dim index As Integer
ArrList.Add(100)
ArrList.Add(200)
ArrList.Add(300)
ArrList.Add(400)
ArrList.Add(500)
For Each value As Integer In ArrList
bitvalue = BitConverter.GetBytes(value)

'I need to convert the Hex value back to its corresponding decimal
value and place it into the bitvalue (0) and bitvalue (1)

senddata(bitvalue(0), bitvalue(1))
Next
End Sub

Before I just saw your own answer to you own question, I was thinking you
are trying to fool us by asking this question. Sorry. :) Though, as I don't
want to discard the answer that I wrote meanwhile, here it is: ;-)
I don't see a hex value in the code. Hex values are strings. You do not have
a string in the code. Therefore, there can not be a hex value, and there is
nothing to convert.

Ok, let's start from the beginning:

In electronic data processing, in the digital world, information is stored
and transmitted using bits as the smallest unit of information. A bit can be
0 or 1, on or off, true or false. These are different, human readable words
for the two states a bit can be.

If you put 8 bits together, you get a byte. A byte can have 256 different
bit combinations. What kind of information is stored in a byte is a matter
of interpretation. For example, you can use 7 bits to store a numeric value
and 1 bit as the sign of the value, so you can store the values -128 to 127.
Without a sign, the values are 0 to 255.

The value stored in a byte can also be the code of a character. Due to
standardization, we are able to correctly interpret which character code
corresponds to which char. For example, the value 65 is the capital letter
"A". There are different character code standards. The table that describes
the relation between character code and character is called a code page. So,
one character can have different character codes in different code pages. In
the .Net Framework (and in VB.Net), two bytes are used to store a character.
The used code page is Unicode. This is necessary to support all the
characters used worldwide because two bytes can have 65,536 different
values.

When we talk about binary, octal, decimal and hexadecimal, we refer to the
human readable representation of a value that is stored in one or several
bits or bytes.

For example, let's take the binary value 1111011.

binary: 01111011
octal: 173
decimal: 123
hex: 7B

This is always the same value. As you can read this on your screen, you are
reading text. Texts are strings. This means, the value has been converted to
four different human readable strings using four different numeric bases (2,
8, 10 and 16).
Armin

Sep 26 '07 #3
Armin,

Nice written for the future, however in my idea you forgot to write how you
can represent a value in human readable Hex notation on a screen or
whatever. Something I always have to search for, but I am sure of something
you know direct from your head.

:-)

Cor

"Armin Zingler" <az*******@freenet.deschreef in bericht
news:O2**************@TK2MSFTNGP06.phx.gbl...
"cmdolcet69" <co************@hotmail.comschrieb
>Public ArrList As New ArrayList
Public bitvalue As Byte()

Public Sub addvalues()
Dim index As Integer
ArrList.Add(100)
ArrList.Add(200)
ArrList.Add(300)
ArrList.Add(400)
ArrList.Add(500)
For Each value As Integer In ArrList
bitvalue = BitConverter.GetBytes(value)

'I need to convert the Hex value back to its corresponding decimal
value and place it into the bitvalue (0) and bitvalue (1)

senddata(bitvalue(0), bitvalue(1))
Next
End Sub


Before I just saw your own answer to you own question, I was thinking you
are trying to fool us by asking this question. Sorry. :) Though, as I
don't
want to discard the answer that I wrote meanwhile, here it is: ;-)
I don't see a hex value in the code. Hex values are strings. You do not
have
a string in the code. Therefore, there can not be a hex value, and there
is
nothing to convert.

Ok, let's start from the beginning:

In electronic data processing, in the digital world, information is stored
and transmitted using bits as the smallest unit of information. A bit can
be
0 or 1, on or off, true or false. These are different, human readable
words
for the two states a bit can be.

If you put 8 bits together, you get a byte. A byte can have 256 different
bit combinations. What kind of information is stored in a byte is a matter
of interpretation. For example, you can use 7 bits to store a numeric
value
and 1 bit as the sign of the value, so you can store the values -128 to
127.
Without a sign, the values are 0 to 255.

The value stored in a byte can also be the code of a character. Due to
standardization, we are able to correctly interpret which character code
corresponds to which char. For example, the value 65 is the capital letter
"A". There are different character code standards. The table that
describes
the relation between character code and character is called a code page.
So,
one character can have different character codes in different code pages.
In
the .Net Framework (and in VB.Net), two bytes are used to store a
character.
The used code page is Unicode. This is necessary to support all the
characters used worldwide because two bytes can have 65,536 different
values.

When we talk about binary, octal, decimal and hexadecimal, we refer to the
human readable representation of a value that is stored in one or several
bits or bytes.

For example, let's take the binary value 1111011.

binary: 01111011
octal: 173
decimal: 123
hex: 7B

This is always the same value. As you can read this on your screen, you
are
reading text. Texts are strings. This means, the value has been converted
to
four different human readable strings using four different numeric bases
(2,
8, 10 and 16).
Armin
Sep 27 '07 #4
"Cor Ligthert[MVP]" <no************@planet.nlschrieb
Armin,

Nice written for the future, however in my idea you forgot to write
how you can represent a value in human readable Hex notation on a
screen or whatever. Something I always have to search for, but I am
sure of something you know direct from your head.

:-)
:-)

I already did it as a reply to him! That's why I didn't repeat it. Ok, let's
do so:

"- An Integer (System.Int32) is made of 4 Bytes.

- You get the single bytes into an array by using BitConverter.GetBytes

- Bytes are stored as binary digits. They don't have a Decimal nor a
Hexadecimal format.

- You can convert an Integer value into a string in different formats,
usually Decimal or Hexadecimal. Use the ToString function to do this. The
default is Decimal, otherwise use "X8" as the format string.

- You can convert a string, containing a number in hex format, into an
Integer value by using "Convert.ToInt32(TheString, 16)"

;-)
Armin

Sep 27 '07 #5
Armin,

Thanks,

:-)

Cor
Sep 27 '07 #6
On Sep 27, 6:21 am, "Armin Zingler" <az.nos...@freenet.dewrote:
"Cor Ligthert[MVP]" <notmyfirstn...@planet.nlschrieb
Armin,
Nice written for the future, however in my idea you forgot to write
how you can represent a value in human readable Hex notation on a
screen or whatever. Something I always have to search for, but I am
sure of something you know direct from your head.
:-)

:-)

I already did it as a reply to him! That's why I didn't repeat it. Ok, let's
do so:

"- AnInteger(System.Int32) is made of 4 Bytes.

- You get the single bytes into an array by using BitConverter.GetBytes

- Bytes are stored as binary digits. They don't have a Decimal nor a
Hexadecimal format.

- You can convert anIntegervalue into a string in different formats,
usually Decimal or Hexadecimal. Use the ToString function to do this. The
default is Decimal, otherwise use "X8" as the format string.

- You can convert a string, containing a number in hex format, into anIntegervalue by using "Convert.ToInt32(TheString, 16)"

;-)

Armin
Armin, reading your last post in this thread im trying to figure out
what i need to do here:
example i have put a message box to see what i should be getting back
from my variable.

what i get back is a value in byte of 15 and in another messagebox a
value of byte 38
now rading your above statment of an integer equals 4 bytes, how can
i get these value of 38 and 15 into an integer?
When i check these value i was getting an integer value of 3878 which
converting into HEX i get F26 and then i take the Hi_byte and Lo_byte
of the value i get the 38 and 15.....Now i get confused but how can i
convert this value back into an integer of 3878???

Oct 8 '07 #7
"cmdolcet69" <co************@hotmail.comschrieb
On Sep 27, 6:21 am, "Armin Zingler" <az.nos...@freenet.dewrote:
"Cor Ligthert[MVP]" <notmyfirstn...@planet.nlschrieb
Armin,
Nice written for the future, however in my idea you forgot to
write
how you can represent a value in human readable Hex notation on
a
screen or whatever. Something I always have to search for, but I
am
sure of something you know direct from your head.
:-)
:-)

I already did it as a reply to him! That's why I didn't repeat it.
Ok, let's
do so:

"- AnInteger(System.Int32) is made of 4 Bytes.

- You get the single bytes into an array by using
BitConverter.GetBytes

- Bytes are stored as binary digits. They don't have a Decimal nor
a
Hexadecimal format.

- You can convert anIntegervalue into a string in different
formats,
usually Decimal or Hexadecimal. Use the ToString function to do
this. The
default is Decimal, otherwise use "X8" as the format string.

- You can convert a string, containing a number in hex format,
into anIntegervalue by using "Convert.ToInt32(TheString, 16)"

;-)

Armin

Armin, reading your last post in this thread im trying to figure out
what i need to do here:
example i have put a message box to see what i should be getting
back
from my variable.

what i get back is a value in byte of 15 and in another messagebox a
value of byte 38
now rading your above statment of an integer equals 4 bytes, how
can
i get these value of 38 and 15 into an integer?
When i check these value i was getting an integer value of 3878
which
converting into HEX i get F26 and then i take the Hi_byte and
Lo_byte
of the value i get the 38 and 15.....
Now i get confused but how can
i
convert this value back into an integer of 3878???

Dim b(3) As Byte
Dim i As Integer

b(0) = 38
b(1) = 15
b(2) = 0
b(3) = 0

i = BitConverter.ToInt32(b, 0)

MsgBox("Decimal representation of variable i: " & i.ToString)
MsgBox("Hexadecimal representation of variable i: " & i.ToString("X"))

Armin

Oct 8 '07 #8
On Oct 8, 9:29 am, "Armin Zingler" <az.nos...@freenet.dewrote:
"cmdolcet69" <colin_dolce...@hotmail.comschrieb


On Sep 27, 6:21 am, "Armin Zingler" <az.nos...@freenet.dewrote:
"Cor Ligthert[MVP]" <notmyfirstn...@planet.nlschrieb
Armin,
Nice written for the future, however in my idea you forgot to
write
how you can represent a value in human readable Hex notation on
a
screen or whatever. Something I always have to search for, but I
am
sure of something you know direct from your head.
:-)
:-)
I already did it as a reply to him! That's why I didn't repeat it.
Ok, let's
do so:
"- AnInteger(System.Int32) is made of 4 Bytes.
- You get the single bytes into an array by using
BitConverter.GetBytes
- Bytes are stored as binary digits. They don't have a Decimal nor
a
Hexadecimal format.
- You canconvertanIntegervalue into a string in different
formats,
usually Decimal or Hexadecimal. Use the ToString function to do
this. The
default is Decimal, otherwise use "X8" as the format string.
- You canconverta string, containing a number in hex format,
into anIntegervalue by using "Convert.ToInt32(TheString, 16)"
;-)
Armin
Armin, reading your last post in this thread im trying to figure out
what i need to do here:
example i have put a message box to see what i should be getting
back
from my variable.
what i get back is a value inbyteof 15 and in another messagebox a
value ofbyte38
now rading your above statment of an integer equals 4 bytes, how
can
i get these value of 38 and 15 into an integer?
When i check these value i was getting an integer value of 3878
which
converting into HEX i get F26 and then i take the Hi_byte and
Lo_byte
of the value i get the 38 and 15.....
Now i get confused but how can
i
convertthis value back into an integer of 3878???

Dim b(3) AsByte
Dim i As Integer

b(0) = 38
b(1) = 15
b(2) = 0
b(3) = 0

i = BitConverter.ToInt32(b, 0)

MsgBox("Decimal representation of variable i: " & i.ToString)
MsgBox("Hexadecimal representation of variable i: " & i.ToString("X"))

Armin- Hide quoted text -

- Show quoted text -
Armin the wierd thing here is when i put a watch on my i it says its
9999, then when i get to the message box it will dsiplay a 9999
the reason the b(0) and b(1) is different is because those aren;t
constant number like above they are value of type byte in another
array, plus i mabtRxBuff (3)=38 and the mabtRxBuff(4) =15. Why does it
return a value of 9999?

Dim b(3) As Byte
Dim i As Integer
b(0) = mabtRxBuf(4)
b(1) = mabtRxBuf(3)
b(2) = 0
b(3) = 0
i = BitConverter.ToInt32(b, 0)

Oct 8 '07 #9
"cmdolcet69" <co************@hotmail.comschrieb

Dim b(3) AsByte
Dim i As Integer

b(0) = 38
b(1) = 15
b(2) = 0
b(3) = 0

i = BitConverter.ToInt32(b, 0)

MsgBox("Decimal representation of variable i: " & i.ToString)
MsgBox("Hexadecimal representation of variable i: " &
i.ToString("X"))

Armin- Hide quoted text -

- Show quoted text -

Armin the wierd thing here is when i put a watch on my i it says its
9999, then when i get to the message box it will dsiplay a 9999
the reason the b(0) and b(1) is different is because those aren;t
constant number like above they are value of type byte in another
array, plus i mabtRxBuff (3)=38 and the mabtRxBuff(4) =15. Why does
it return a value of 9999?

Dim b(3) As Byte
Dim i As Integer
b(0) = mabtRxBuf(4)
b(1) = mabtRxBuf(3)
b(2) = 0
b(3) = 0
i = BitConverter.ToInt32(b, 0)
You exchange 38 and 15. In my example, b(0) is 38 and b(1) is 15. In yours,
b(0) is 15 and b(1) is 39 (39!). It must be 39 because 39 * 256 + 15 = 9999.
Armin

Oct 8 '07 #10
On Oct 8, 2:09 pm, "Armin Zingler" <az.nos...@freenet.dewrote:
"cmdolcet69" <colin_dolce...@hotmail.comschrieb


Dim b(3) AsByte
Dim i As Integer
b(0) = 38
b(1) = 15
b(2) = 0
b(3) = 0
i = BitConverter.ToInt32(b, 0)
MsgBox("Decimalrepresentation of variable i: " & i.ToString)
MsgBox("Hexadecimal representation of variable i: " &
i.ToString("X"))
Armin- Hide quoted text -
- Show quoted text -
Armin the wierd thing here is when i put a watch on my i it says its
9999, then when i get to the message box it will dsiplay a 9999
the reason the b(0) and b(1) is different is because those aren;t
constant number like above they are value of type byte in another
array, plus i mabtRxBuff (3)=38 and the mabtRxBuff(4) =15. Why does
it return a value of 9999?
Dim b(3) As Byte
Dim i As Integer
b(0) = mabtRxBuf(4)
b(1) = mabtRxBuf(3)
b(2) = 0
b(3) = 0
i = BitConverter.ToInt32(b, 0)

You exchange 38 and 15. In my example, b(0) is 38 and b(1) is 15. In yours,
b(0) is 15 and b(1) is 39 (39!). It must be 39 because 39 * 256 + 15 = 9999.

Armin- Hide quoted text -

- Show quoted text -
Thank you

Oct 8 '07 #11

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

4 posts views Thread by Julian Hernandez Gomez | last post: by
3 posts views Thread by JenHu | last post: by
3 posts views Thread by mlafarlett | last post: by
1 post views Thread by Oskars | last post: by
reply views Thread by zhoujie | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.