0xffffffff «- nix verstehen (MD5)
Harald Breitkreutz
- javascript
0 n.d. parker0 Starbuck0 Michael Schröpl0 Calocybe
Hi !
Kann mir bitte jemand erklären, was es bringt, js-variablen in der form 0xffffffff zu notieren bzw. was diese heißen sollen.
Das ganze hab ich in dem Artikel zur MD5-Verschlüsselung gefunden und konnte auch nach intensiver Suche nix über diese Notierungsart rausfinden (Vielleicht bin ich auch blind ...)
Meiner Meinung schaut das auch stark nach C aus, aber da kenn ich mich nicht sooooo aus.
Falls das einfach ne' Hexa-Zahl sein soll, wär die ja übelst groß ?!
Also, wär nett, wenn mir das jemand erklären könnte.
Danke & Ciao,
Harry
hi harry,
Falls das einfach ne' Hexa-Zahl sein soll, wär die ja übelst groß ?!
diese zahl ist tatsaechlich hexadezimal notiert (und genau vier byte gross = 32 bit zahl....long int)
0xFFFFFFFF = 16 hoch 8 -1 = 4.294.967.295
im rechensprachgebrauch waeren das dann 4 giga - 1 .-)
cua
n.d.p.
Hi n.d.p.
diese zahl ist tatsaechlich hexadezimal notiert (und genau vier byte gross = 32 bit zahl....long int)
0xFFFFFFFF = 16 hoch 8 -1 = 4.294.967.295im rechensprachgebrauch waeren das dann 4 giga - 1 .-)
Mille Grazie !
Dann heißt das 0x vorne dran also eigentlich nur, daß da ne hexa-zahl steht oder wie ? komisch .... anstatt daß die einfach ein h vorne drankleben ?!
Harry
nochmal hi, harry
Dann heißt das 0x vorne dran also eigentlich nur, daß da ne hexa-zahl steht oder wie ? komisch .... anstatt daß die einfach ein h vorne drankleben ?!
tja, alte c-syntax (oder auch schon unix?? oder sogar noch aelter?)
die 0 hat soweit ich weiss, was mit dem anderen zahlensystem zu tun (nur ne 0 davorgesetzt bedeutet z.B. oktale angabe, ob das in JS allerdings auch so ist, weiss ich nicht, probier ich jetzt auch nicht aus :-))
x steht fuer he_x_
cua
n.d.p.
Tag all!
Dann heißt das 0x vorne dran also eigentlich nur, daß da ne hexa-zahl steht oder wie ? komisch .... anstatt daß die einfach ein h vorne drankleben ?!
Dann waere es ein Variablenname. Andersherum kann also ein Name auch nie mit einer Ziffer anfangen (wohl aber welche enthalten).
die 0 hat soweit ich weiss, was mit dem anderen zahlensystem zu tun (nur ne 0 davorgesetzt bedeutet z.B. oktale angabe, ob das in JS allerdings auch so ist, weiss ich nicht, probier ich jetzt auch nicht aus :-))
Ja, ist genauso, und das gibt manchmal auf den ersten Blick seltsame Ueberraschungen: <../../sfausles/tsfa_tca.htm#a10>.
So long
Hallo Leute,
die 0 hat soweit ich weiss, was mit dem anderen zahlensystem zu tun (nur ne 0 davorgesetzt bedeutet z.B. oktale angabe, ob das in JS allerdings auch so ist, weiss ich nicht, probier ich jetzt auch nicht aus :-))
Ja, ist genauso, und das gibt manchmal auf den ersten Blick seltsame Ueberraschungen: <../../sfausles/tsfa_tca.htm#a10>.
woher das ganze kommt darf gestritten werden. Ich werf hier nur noch ein paar Tatsachen in den Ring.
Wenn man mal von C absieht und eine Ebene tiefer geht dann wird bei ....
Motorola ein vvorangestelltes $ genommen um eine Dezimalzahl von einer Hexzahl zu unterscheiden.
Bei Intelarchitekturen wird ein nachgestelltes H verwendet um die beiden Zahlen zu verwenden mit der
Ausnahme das wenn die Hexzahl mit einem Buchstaben beginnt ihr eine '0' voranzustellen ist um sie
von einer Variablen zu unterscheiden.
Bis denn ... Starbuck
hi, starbuck
Wenn man mal von C absieht und eine Ebene tiefer geht dann wird bei ....
- Motorola ein vvorangestelltes $ genommen um eine Dezimalzahl von einer Hexzahl zu unterscheiden.
- Bei Intelarchitekturen wird ein nachgestelltes H verwendet um die beiden Zahlen zu verwenden mit der [...]
*g* was ist denn bei dir eine ebene tiefer? assembler? maschinencode?
es ist eine frage des interpreters (bzw. parsers) der entsprechenden zeichenfolgen *g* wenn ich in meinen atari ST (Motorola) in C $FFFF eingebe wird der mir was husten :-)
und im tatsaechlichen maschinencode ist es sowieso egal, denn der besteht ja eh aus nullen und einsen....
ich persoenlich finde die geschichte mit 0 und 0x ziemlich eindeutig und unkompliziert (ja, in basic habe ich damals auch $FFFF geschrieben... schon bei Z80 :-))
cua
n.d.p.
Kann mir bitte jemand erklären, was es bringt, js-variablen in der form 0xffffffff zu notieren bzw. was diese heißen sollen.
Das ganze hab ich in dem Artikel zur MD5-Verschlüsselung gefunden und konnte auch nach intensiver Suche nix über diese Notierungsart rausfinden (Vielleicht bin ich auch blind ...)
Meiner Meinung schaut das auch stark nach C aus, aber da kenn ich mich nicht sooooo aus.
Falls das einfach ne' Hexa-Zahl sein soll, wär die ja übelst groß ?!
Hi Harry,
also das die Zahl so groß ist finde ich nicht, das ist ein 32 Bit Wert. Wenn du in deine Registry schaust
findest du ein Haufen dieser Zahlen in dieser Notation, das ist einfach ein Format um zu unterscheiden
das das kein String (Zeichenkette bestehend aus Buchstaben) ist.
Die Registry unter den Windows9x Systemen findest du unter c:/<systemverzeichnis>/regedit.exe
Bis denn ... Starbuck
Hi,
Falls das einfach ne' Hexa-Zahl sein soll, wär die ja übelst groß ?!
Falls. Würde mich aber überraschen.
Bei 0xffffffff fallen mir zwei naheliegender Interpretationen ein:
a) eine Bitmaske mit 32 gesetzten Bits
b) der Wert "-1" als 32-Bit-Integer-Zahl im Zweierkomplement.
mfG - Michael
Auch Hi!
Falls das einfach ne' Hexa-Zahl sein soll, wär die ja übelst groß ?!
Falls. Würde mich aber überraschen.
Wieso?
Bei 0xffffffff fallen mir zwei naheliegender Interpretationen ein:
a) eine Bitmaske mit 32 gesetzten Bits
b) der Wert "-1" als 32-Bit-Integer-Zahl im Zweierkomplement.
c) der Wert 4294967295 als 32-Bit unsigned long int == 2 hoch 32 - 1
<javascript:alert(0xffffffff)>
Koennte evtl. von der Maschine anhaengig sein, auf der es ausgefuehrt wird.
So long
P.S. In Pascal wird eine Hexzahl ueberigens auch mit $ angefangen; im alten QBASIC (bei WinNT immer noch dabei) beginnt sie mit &H.