Okta und Hex

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

BlackNetrunner

Betreff: Okta und Hex

BeitragDo, Dez 01, 2005 0:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie rechne ich Hexdezimal Zahlen in Oktale Zahlen um?
Oktales System weil ich mit WriteByte einen Code in eine Datei schreiben will. Ich kenn den Code aber nur in Hexdezimaler Form.

Kann man nicht eine "WriteHex Funktion" schreiben? Smile

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Dez 01, 2005 3:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Wieso willst du als octale Zahlen speichern? Eine octale Zahl hat zwar 8 Möglichkeiten (0-7 dec), und benötigt somit 3 Bit. Eine Hexadecimale Zahl ist ja genau deswegen erschaffen worden, damit Bytes vom Menschen leicht gespeichert werden können. Eine Hex-Zahl hat 16 Möglichkeiten (0-15 dec) und somit 4 Bit. Mit zwei Hex-Zifern (00-FF) hast du ein komplettes Byte. Das Kopfrechnen von Hexzahlen sollte jeder Programmierer irgendwann mal gelernd haben. Erleichtert jedenfalls so einiges.
 

BlackNetrunner

BeitragDo, Dez 01, 2005 13:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja ich komm damit auch noch nicht so zurecht. Die Sache ist jedenfals diese:

Ich möchte einen ASCII Zeilenumbruch beim speichern in eine Datei bewirken.

Ich hab einfach eine Textdatei (Notepad) mit ein wenig Text und einem Zeilenumbruch geschrieben und diese dann mit einem Hexeditor geöffnet. Und an der Stelle wo der Zeilenumbruch geschieht steht halt der 4stellige Hex Code. Und diesen wollte ich in Byte umrechnen damit ich also den Zeilenumbruch mit WriteByte schreiben kann.

Ich wette ich mach mir die Sache zu kompliziert. Was? Smile

Add:
user posted image

Auch wenn es jetzt ne einfache Möglichkeit giebt, mir ist wichtig das ich diesen Zusammenhang zwischen den ganzen Codes verstehe.

Im übrigen hab ich Byte mit Oktal verwechselt. Das 8 Bit ja 1 Byte sind. Da dachte ich 8 naja lol ^^

Xaron

BeitragDo, Dez 01, 2005 14:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Jo machst Du. Wink

Aber hier mal ein Link für Zahlensysteme:

http://home.vrweb.de/~praxelius/basics/zahlen.htm

oder hier auch mit Rechner:

http://arndt-bruenner.de/mathe...ysteme.htm

Gruß - Xaron
Cerberus X - Monkey X Reloaded!
 

BlackNetrunner

BeitragDo, Dez 01, 2005 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, danke. Das wird mir weiterhelfen.
Also ist wenn ich WriteByte ausführe Oktal (ist ja nicht WriteBinär Wink).
Das wär dann also WriteByte ("146") wäre dann 66 in Hex Form und der Buchstabe "f" in ASCII? Right?
Dann würde also der Zeilenumbruch 0d0a(Hex) - 6412(Oktal) sein also müsste ich WriteByte ("6412") schreiben? Richtig? bzw WriteByte 64 und WriteByte 12.

D2006

Administrator

BeitragDo, Dez 01, 2005 14:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Falsch.

Streiche als erstes mal das oktale Zahlensystem. Das hat damit gar nix am Hut. Streiche überhaupt Zahlensysteme.

Mit WriteByte schreibt man ein Byte. Ein Byt kann die Werte 0 bis 255 (dezimal) annehmen. Dein Hexeditor zeigt dir die Zahl Hexadezimal an. Musst du also nur umrechnen (das kann übrigens alles der Windowstaschenrechner).

Um mal zum Punkt zu kommen:
Zeilen umbruch mit WriteByte 13 und WriteByte 10.
Kannst auch WriteByte $F und WriteByte $A machen.
oder WriteLine satz$ ... das macht den Zeilenumbruch automatisch mit hintenran.

MfG
D2006
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2
 

Chris02

BeitragDo, Dez 01, 2005 23:30
Antworten mit Zitat
Benutzer-Profile anzeigen
wozu die mühe mit den Hexzahlen? in der OH giebts doch eine Tabelle mit ASCII codes
 

BlackNetrunner

BeitragFr, Dez 02, 2005 16:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habs jetzt raus! Wink war einfacher als gedacht.
THX an euch

Ich hab nur nicht geschallt das ein Int = 4 Byte sind. Ausserdem hab ich nen dummen Fehler gemacht. Anstat OpenFile hab ich nur WriteFile gemacht XD, darum hab ich auch nicht rausgefunden woran es lag Rolling Eyes

Naja man lernt halt...

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group