Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

NullEinsCode-Programmieren in 0en und 1en

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
raph ael



Anmeldungsdatum: 12.04.2006
Beiträge: 472

BeitragVerfasst am: 11.07.2007, 17:38    Titel: NullEinsCode-Programmieren in 0en und 1en Antworten mit Zitat

Für diejenigen, sie sich immer schon gewünscht haben, direkt in 0-en und 1-en zu programmieren, habe ich die ideale Lösung:
01Code
Die Nullen und die Einsen werden einfach zum Byte zusammengesetzt und in die Ausgabedatei geschrieben.

Dazu gibt es einen Decompiler
Damit kann man jede beliebige Datei in eine Folge von 0en und 1en verwandeln. Ideal um geheime Daten zu schützen.

nulleins.zip- 23KB
_________________
Zitat:
1000 Yottabytes sind absurd. 640 Yottabytes sollten genug für jeden sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 11.07.2007, 17:45    Titel: Antworten mit Zitat

[OT]
Wenn man alles Wissen der Welt in Nullen und Einsen ausdrücken kann, kann man dann auch die Hälfte alles Wissens nur in Nullen ausdrücken?
[/OT]
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 11.07.2007, 17:50    Titel: Antworten mit Zitat

Das mit 1 und 0 hab ich nie verstanden obwohl es doch wichtigsten Zahlen für Computer sind durchgeknallt
Jedenfalls Respekt für die Arbeit zwinkern
_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 11.07.2007, 18:05    Titel: Antworten mit Zitat

Ich kann die zip-datei nicht öffnen traurig


nemored hat Folgendes geschrieben:
[OT]
Wenn man alles Wissen der Welt in Nullen und Einsen ausdrücken kann, kann man dann auch die Hälfte alles Wissens nur in Nullen ausdrücken?
[/OT]


noch mehr OT:
Neben dezimalen Zahlen und binären Zahlensystemen gibts natürlich auch das unnäre Zahlensystem,

1 = |
2 = ||
3 = |||
usw..

Also um deine Frage zu beantworten: Ja!
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 11.07.2007, 19:36    Titel: Antworten mit Zitat

das problem beim unären system ist jedoch, dass eine lineare zahlendarstellung (||| könnte 12, 21 oder 3 sein) nicht eindeutig ist Zunge rausstrecken
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 11.07.2007, 19:53    Titel: Antworten mit Zitat

wenn man nicht ganz so streng ist, dann betrachtet man das Trennzeichen zusätzlich zu den Ziffern (oder zu der Ziffer beim Unnärensystem) zwinkern
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 11.07.2007, 21:14    Titel: Antworten mit Zitat

MisterD hat Folgendes geschrieben:
(||| könnte 12, 21 oder 3 sein) nicht eindeutig ist Zunge rausstrecken

Es ist Eindeutig 3, sonst hättest du sowas wie UCD (unäre coded decimal, abgeleitet von BCD, Binary Coded Decimal)
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 11.07.2007, 22:01    Titel: Antworten mit Zitat

nemored hat Folgendes geschrieben:
Wenn man alles Wissen der Welt in Nullen und Einsen ausdrücken kann,

Bitte bedenken: Eine Festplatte schluckt in ihren Sektoren nur 1 und 0. Bei einer 250 GB-Platte sind dies etwa 2 Billionen Stück. Auch RAM-Riegel (Arbeitsspeicher) stellen alles als 1 und 0 dar. Durch geeignete Definitionen von Codierungen (z.B. ASCII-Code, jedes Bilddateiformat, NTFS-Festplattenformatierung usw.) können wir diesen Einsen-und-Nullen-"Friedhof" zu etwas für uns Menschen Nützliches umwandeln, z.B. Urlaubsfotos digital speichern und darstellen.

nemored hat Folgendes geschrieben:
kann man dann auch die Hälfte alles Wissens nur in Nullen ausdrücken?

Das hingegen klappt nicht, weil nur Null ist genau 1 (ein einziger) Zustand, 1^"Speicherkapazität" [hohe Zahl] gibt immer genau 1 Darstellmöglichkeit.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 11.07.2007, 22:29    Titel: Antworten mit Zitat

Für den Computer ist das auf jeden Fall richtig. Aber das unäre Zahlensystem hat mir doch zu denken gegeben: letztendlich kann man doch alle digitalen Daten durch eine (eventuell gigantische) Zahl ausdrücken und diese dann im unären System auf einem ziemlich großen Blatt Papier niederschreiben.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 11.07.2007, 22:59    Titel: Antworten mit Zitat

Ist halt alles eine Frage der Interpretation. Unnäre Zahlen/Folgen kann man nicht wirklich codieren.
So muss man jede Zahl interpretieren, wollte man wirklich unnär speichern.

Zum Beispiel:
||||| = "Auf der Welt leben 5 Menschen"
|||||||||| = "Auf der Welt leben 10 Menschen"
|||||||||||||| = "Auf der Welt leben nur Affen"
| = "Der Mond besteht aus Käse"
.
.
(vielleicht beinhaltet eine unnäre Zahl den Inhalt der Welt, wie sie gerade ist)

Im Dualsystem ist prinzipiell nicht anders. So werden 8 Bits zusammengefasst zum Byte und als Ascii-code interpretiert. Der große Unterschied: Man kann Daten codieren und komprimieren und benötigt viel weniger Speicherplatz.
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 11.07.2007, 23:10    Titel: Antworten mit Zitat

Zitat:
Zum Beispiel:
||||| = "Auf der Welt leben 5 Menschen"
|||||||||| = "Auf der Welt leben 10 Menschen"
|||||||||||||| = "Auf der Welt leben nur Affen"
| = "Der Mond besteht aus Käse"

Nein, ich hätte das anders gemacht. Der Satz
Zitat:
Auf der Welt leben 5 Menschen

wird zuerst in ASCII gespeichert, das sind 29 Byte oder 232 Bit. Wenn ich die Bit hintereinander schreibe (als Binärzahl), dann habe ich eine Zahl in der Größenordnung 2^232. Die kann ich jetzt unär aufschreiben. Damit ist mein unärer Ausdruck ebenso eindeutig wie in der binären Schreibweise.

Dualsystem ist nicht wirklich platzsparend. Da ist z. B. das Hexagesimalsystem viel knapper. Braucht dafür aber auch viel mehr einzelne Ziffern.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 11.07.2007, 23:36    Titel: Antworten mit Zitat

nemored hat Folgendes geschrieben:
Dualsystem ist nicht wirklich platzsparend. Da ist z. B. das Hexagesimalsystem viel knapper. Braucht dafür aber auch viel mehr einzelne Ziffern.


Das ist genau der Punkt. Es geht ja nicht darum, Zahlen oder ASCII-Zeichen darzustellen, sondern um Information. Und 1/0, ja/nein oder wahr/falsch sind nun mal die kleinsten Informationseinheiten. Die Schreibweise als Einsen und Nullen ist nur eine Form der Darstellung, die für Menschen lesbar ist. Im PC sind ja auch keine Zahlen gespeichert, sondern elektrische Ladungen, Magnetisierungen oder Oberflächenstrukturen auf einer CD. Dort findet man ja auch unter dem Mikroskop kene Ziffern.
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 11.07.2007, 23:37    Titel: Antworten mit Zitat

nemored hat Folgendes geschrieben:
Nein, ich hätte das anders gemacht.

Ich glaube das macht speichertechnisch keinen Unterschied, außer dass deines irgendwie strukturierter ist happy.


nemored hat Folgendes geschrieben:
Dualsystem ist nicht wirklich platzsparend. Da ist z. B. das Hexagesimalsystem viel knapper. Braucht dafür aber auch viel mehr einzelne Ziffern.

Damit meine ich ja auch den Unterschied zum unnären System. Sonst ist ja wohl klar, dass man mit größerer Basis mehr erreichen kann.
Aber das Verhältnis der Speichermenge wächst exponentiell.

Speicherplatz 5 Einheiten:
unnäres System: 1^5 = 1
binäres System: 2^5 = 32
ternäres System: 3^5 = 243
...

Also 5 Bits im 1er-System gibts nur einmal, kann man nur einmal interpretieren
5 Bits im 2er System kann man auf 32 verschiedene Arten darstellen
5 Bits im 3er System schon 243.
Das ist schon ein enormer Unterschied. Wenn wir tatsächlich einen Computer hätten, der auf einem echtem ternärem system beruht (strom an, strom aus, nochn zustand). dann würde das die Effizienz gegenüber dem normalen dual-computer unvorstellbar überschreiten. Was ich damit sagen will: Wir brauchen gar nicht so große Zahlensysteme. Das Dualsystem ist schon super. Ein ternäres System wäre schon eine Revolution (speichermäßig, technisch sowieso)

so wird spät, schreib morgen halb 8 Klausur
Gn8
_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 12.07.2007, 19:13    Titel: Antworten mit Zitat

||||||||||||||||||||||||||||||||||||||||||
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz