Når du skrive Hex, så mener du jo nok Hexadecimal.
Hexa-decimal betyder 6-10, og er betegnelsen for et tallsystem med base 16.
Det talssystem som du kender er et base 10 (decimal) system.
Der findes talssystemer med alle baser eks. 2(binær) 8(octal) eller base 14.
Kort kan jeg sige at decimal tallet 123 læses som 10^0*3+10^1*2+10^2*1,
generelt: base^position * værdi. Hvordan man regner frem og tilbage er en
længere matematisk udredning, som jeg ikke vil begynde her.
I Hexadecimal opstår der et problem da man ikke har nok ciffre (0-9), derfor
bruger man alfabetet herefter: A=10, B=11,...F=15.
Tilbage til dit problem:
Når du skal sende værdien i hex, mener du nok ascii værdien (eller bare
værdien). Hvis du kigger i en fil med en hexeditor, kan du se filens
værdier, præsenteret i hex. Hvis der eks. står værdien 10 i filen, vil du se
de repræsenteret som 0A og de to værdier er to sider af samme sag. Man kunne
også vise tallet 10 som binært tal, og værdien ville så være det samme.
Hvis du alligevel skal bruge hex-notation, har VB funktionen Hex(value), som
giver en string med den hexadecimale repræsentation, men det er vigtigt at
huske at de bare er anden måde at skrive tallet på. En primitiv
sammenligning kunne være at man kan skrive den samme sætning på tysk, dansk
og engelsk. Selvom alle sætningerne ser helt forskellige ud, står der jo det
samme.
Mvh. Kenneth
|