String umwandeln in Binary ?

Anfängerfragen zum Programmieren mit PureBasic.
Simon74
Beiträge: 60
Registriert: 04.05.2014 10:05

Re: String umwandeln in Binary ?

Beitrag von Simon74 »

Purebasic -> Werkzeuge -> ANSII Tabelle
da steht dann zb.:

Code: Alles auswählen

char   ascii    hex
Ø       216     $D8
so      14       $E
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: String umwandeln in Binary ?

Beitrag von STARGÅTE »

SO ist eine Abkürzung, was das Zeichen nicht sichtbar ist.

Du kannst Zahlen direkt in der Datei speichern, ohne Umwegen mit dem Hex/Str/Val usw.

Wenn du also deine Zahl hast, die ja nun nur noch aus 4 Bytes bestehen soll (warum auch immer), dann liegt die ja in der Form vor:

Code: Alles auswählen

Value.i = $C0791245 ; komisches Format, ohne Sekunden
Das kannst du normal als LONG speichern:

Code: Alles auswählen

WriteLong(File, Value)
Denn dann liegt die Zahl ja in der binären Darstellung vor.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Simon74
Beiträge: 60
Registriert: 04.05.2014 10:05

Re: String umwandeln in Binary ?

Beitrag von Simon74 »

Danke für die Hilfe, es tut jetzt was es soll. :allright:
Simon74
Beiträge: 60
Registriert: 04.05.2014 10:05

Re: String umwandeln in Binary ?

Beitrag von Simon74 »

STARGÅTE hat geschrieben: Du wandelst also erst das Datum in ein modifiziertes Julianisches Datum um, und dann einfach mit der Beschreibung in die 40Bit-Form, also die Zeit in 6 BCDs und die Tage als Word:

Code: Alles auswählen

Procedure Example(Date.i)
	
	Protected Time.i = Val("$"+FormatDate("%hh%ii%ss", Date))
	
	ProcedureReturn (Int(date/(60*60*24))+40587)<<24 | Time
	
EndProcedure

Debug Hex(Example(Date(1993, 10, 13, 12, 45, 00)))
Dieser Code funktioniert einwandfrei, schlecht daran ist das ich in nicht verstehe :oops:
Wie komme ich zurück vom MJD Datumswert in HEX(C079) bzw. VAL("49273") nach 13.10.1993 ?
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: String umwandeln in Binary ?

Beitrag von mk-soft »

Vielleicht ist es hilfreich mal wieder das Mathebuch aufzuschalten und als erstes Zahlensystem aufzufrischen.

Soll nicht negativ klingen. Ist aber in der programmierung unbedingt erforderlich.

Aufbau von Ganzzahlen, Hexzahlen und Binärzahlen. Strukturierte Aufbau von Gleitpunktzahlen (Float, Dopple)
Was ist ein Bit, Byte, Word, Doppelword. Welcher Bereich lassen sich dort ablegen.
Darstellung von Zahlen. Dezimal, Hexadezimal, Binär.
Vorzeichenbehaftete Zahlen (Signed) und Nicht Vorzeichenbehaftete Zahlen (Unsigned)

Danach sollten Deine fragen sich von selber erledigen.

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Simon74
Beiträge: 60
Registriert: 04.05.2014 10:05

Re: String umwandeln in Binary ?

Beitrag von Simon74 »

Ja. :lol:

Ich habs geschafft. MJD to Date.
Close.
Antworten