Welch traurige Epoche, in der es leichter ist, ein Atom zu zertrümmern, als ein Vorurteil.

Albert Einstein

Du bist nicht eingeloggt. Ich habe einen Account - einloggen!

Posts tagged with "programmieren".

Boah, war das ein Scheißtag gestern (Sonntag). Ich hab bald ne Persönlichkeitskrise gekriegt, die Technik war einfach gegen mich, und das wo ich doch sonst immer den Techniker vom Dienst mache. Aber so langsam kommt Licht in die Sache. (Leute, die weder mit Hardware umgehen noch programmieren können, sollten den Artikel jetzt lieber wegklicken.)

Für unseren kleinen Lanparty-CoD4-Clan habe ich ein Forum aufgesetzt. SMF sollte es sein, weil das wesentlich mächtiger ist als PhpBB, und ich steh ja auf oversized. Ging auch erstmal ganz prima. Dann hab ich mich eingeloggt und baff war mein CSS weg, also null Design mehr, nur noch Text. Hab ein bisschen gebastelt, die Config kaputt gemacht und bin darüber darauf gekommen das Forum mal über die IP statt über die Domain aufzurufen. Dazu musste ich aber der IP erstmal ne Standarddomain verpassen.1 Mit der IP ging es dann und plötzlich auch wieder mit der Domain - wtf? Okay, es lag also daran, dass die Domain, auf der SMF läuft, nicht die Standarddomain der IP war. Des Rätsels Lösung: SMF speichert alles, was mit dem Theme zu tun hat, mit absoluten Pfaden in der Datenbank. Das war am Anfang die IP, weil während der Einrichtung des Forums die Domain noch nicht fertig war. Hab ich dann später geändert und die Rechnung ohne SMF gemacht, wenn die Themes sind immer noch auf die IP gelinkt. Kriegt die IP nun ne andere Domain zugewiesen, ist SMF auf der IP weg und damit auch das Theme und heraus kommt ein Haufen Crap. Fixed.

Apropos CoD - mein PC hat da letztens ständig gehakt, obwohl die Hardware hundert mal ausreichen sollte und der Server okay war und außer mir keiner Probleme hatte. Ist jetzt wieder weg. No idea. Closed, not a bug.

Habari habe ich auf den neuen Server umgezogen, seitdem kann ich keine Artikel mehr schreiben, weil das Limit für benutzten Speicher bei PHP-Skripten überschritten wird (32MB) - das sollte nicht passieren. Hängt irgendwie am Theme, soweit bin ich schon. Im IRC kriege ich gerade niemanden, hoffentlich wird das was, wär echt ätzend sonst weil ich keine Ahnung habe woran es liegt, schließlich habe ich nichts geändert beim Umzug. Work in Progress.

Mein Elektroherd funktioniert immer noch nicht. Der Ofen geht und die Steckdose, die vorne eingebaut ist, auch. Die Platten nicht - der Herd geht an, aber nix wird warm. Aufgeschraubt und reingeguckt habe ich schon, sieht alles ganz okay aus. Keine Ahnung was da los ist. Unsolved.

Der PC, den ich hier zusammen gebaut habe für ne Freundin, funktioniert plötzlich nicht mehr. Absolut kein Plan was da los ist. Es gibt einfach kein Bild. Zwischendurch war da mal ne Grafikkarte drin, jetzt nicht mehr, weil eigentlich Grafik onboard ist, die tut aber nix und auch wenn ich die Grafikkarte wieder reinstecke bringt das nix. Bios-Reset hat auch nicht geholfen. No idea. Work in Progress.

An einem anderen PC hat die Grafikkarte eine Weile ohne Kühler gelebt (?!), ging auch ganz gut, solange der PC nicht belastet wurde - bis ich einen Kühler montiert habe (großer Passivkühler von AC). Kaum war der drauf, ging gar nix mehr. Jetzt läuft der PC wieder ganz ohne. Vermutung: Der Kühler hatte keinen guten Kontakt zum Chipsatz - vermutlich wurde daher weniger Wärme abgeleitet als vorher einfach in die Luft ging, denn der Rest, der nicht über die Heatpipe geht, wird ja schön auf dem Chip gehalten weil der Kühler alles blockiert. Sprich so wenig Kuperkontakt dass es schlechter als Luftkühlung war. Fail. Closed unsolved.

Wieso zur Hölle habe ich den Beitrag eigentlich "Alles klärt sich" genannt? Ich sitze vor einem Haufen ungelöster Scheiße. Und ich fluche verdammt viel heute. Mein Habari-Cache-Problem fixt sich zwischendurch selbst (das ist der Fehler rechts in der Sidebar), tritt dann aber auch von selbst wieder auf. No idea. Frustrated.

Nachher fahre ich erstmal nach Wuppertal und treff' mich mit einer aus dem Helden-Forum, Ticket für meine Schwester abholen für das Konzert an Halloween. Ist ja inzwischen ausverkauft. Wenigstens das klappt dieses Jahr: Konzerte. hahahah

Ach, und ich weiß wieder wieso sich alles klärt. Ich hab nämlich plötzlich die zehnfache Menge Spam auf meine Webmaster-Adresse bekommen... Grund: Ich hab jetzt eine Catch-All-Adresse, und die Ergebnisse gehen an webmaster... muss ich mal direkt wieder abschalten, die Umleitung. :D

---

1 Wer glaubt, er würde das eigentlich verstehen, aber gerade nicht mitkommt, möge das hier lesen: Website auf eigenen Server umziehen - Schnellanleitung - da gibt's nämlich Infos wie das mit Domains und IPs und Servern so läuft.

Ich bin ja eigentlich nicht besonders paranoid. Ich schließe nicht mal nachts die Tür ab. Ich blogge das sogar. Aber meine Passwörter sind alle recht sicher, einfach, weil die Methode, die ermöglicht dass ich mir die merken kann, gleichzeitig auch sehr sichere komplexe Passwörter erzeugt. Auch darüber habe ich übrigens mal gebloggt.

Wieso schränken nun so viele Anbieter, zuletzt stolperte ich beim ADAC und bei meinem Gasanbieter darüber, die Wahl des Passworts zu ungunsten der Sicherheit ein? Während z.B. GMX sogar verlangt, dass man mindestens eine Zahl verbaut, und Server Möglichkeiten bieten, den Benutzern eines Netzwerks zu diktieren, dass deren Passwörter eine bestimmte Komplexität haben müssen, beschränkt Pearl, ein Ein-Euro-Onlineshop, die Länge des Passworts auf 8 Zeichen. Lächerlich.

Es ist ja nicht so, dass man kein nahezu unknackbares Passwort in 8 Zeichen quetschen könnte, aber ich verstehe es einfach nicht. Ich programmiere selbst seit vielen Jahren, auch PHP mit MySQL, und ich sehe wirklich nur einen programmiertechnischen Grund für sowas: Der Programmierer ist zu faul, eine ordentliche Prüfung gegen Datenbankhacks (SQL-Injects) für die Passwörter einzubauen, und verbietet daher z.B. alles außer Buchstaben. Wenn das der Grund ist, ist der Programmierer aber eh schlecht, denn entweder prüft er dann z.B. den Namen oder die Adresse gar nicht oder er ist zu doof die selbe Routine auf das Passwort anzuwenden.

Im Fall meines Gasanbieters war es so, dass ich mir für die Dienste, die meine Wohnung betreffen, ein neues Passwort ausgedacht hatte, welches ausnahmsweise mal ein Komma enthielt. Kommata sind dort aber verboten. Warum? Anderswo verbietet man andere Sonderzeichen, schränkt gar auf Buchstaben und Zahlen ein oder gibt Maximallängen vor. Ich verstehe es nicht. Hält man den Nutzer für unfähig, sich das Passwort zu merken, und zwingt ihn deshalb zu weniger komplexen Passwörtern? Das kann's doch nicht sein. Hat jemand eine bessere Idee? Ansonsten werde ich mal alle von mir genutzten Dienste anschreiben warum sie das tun und auf diesen sowie den oben verlinkten Artikel verweisen, mal sehen, ob was passiert.

Also dass das so schwer ist hätte ich ja nicht gedacht. Ich wollte doch nur, dass die Bilder, die ich direkt auf Konzertheld.de einstelle und nicht bei Flickr, erstmal in einer Vorschauversion angezeigt werden um die Größe der Webseite nicht so aufzublähen und dann großklickbar sind mit so einem Lightboxteil.

Was hat's gebraucht? Ein Photoshop-Droplet und ein selbst geschriebenes Programm. Der Habari Media Silo hat seinen Dienst komplett quittiert und da der eh nur Bilder hochladen, aber nicht schrumpfen kann, hab ich mich dem zugrundeliegenden Problem auch nicht weiter gewidmet. Das Photoshop-Droplet schrumpft die Originaldatei auf 320px Breite und speichert eine Kopie mit dem Namenszusatz -small. Mein Programm akzeptiert die Originaldatei als Parameter, lädt diese und die kleine Version dann hoch und generiert den HTML-Code, den ich hier einfügen muss, direkt mit. Mehr wollte ich doch gar nicht...

Das Thickbox-Plugin funktioniert irgendwie noch nicht. Da arbeite ich noch dran. Normale Fotos sind jedenfalls schonmal bei Flickr bzw. Picasa, die von Flickr werden hier eingebunden, die von Picasa muss ich noch (das Plugin muss noch für Habari angepasst werden).

Es ist vielleicht nicht der Hit, dass die mit meinem Programm hochgeladenen Bilder nirgendwo mehr auftauchen außer auf dem FTP-Server - aber ganz ehrlich, solche Bilder (Screenshots usw.) lade ich doch eh hoch und vergesse die dann. Ausgestattet mit alt- und title-Attribut sind sie, von daher werde ich mich nachdem ich alle Artikel überarbeitet und die Bilder angepasst bzw. repariert habe nie wieder darum kümmern - warum auch, funktioniert dann von alleine...

Falls mal jemand in Habari seine Tags nach Anzahl sortiert haben möchte, so sieht die Abfrage aus (ohne vereinfachende Aliases):

SELECT habari\_\_object\_terms.term\_id, habari\_\_terms.term\_display, COUNT( habari\_\_object\_terms.term\_id ) AS blubb
FROM habari\_\_object\_terms
INNER JOIN habari\_\_terms ON habari\_\_terms.id = habari\_\_object\_terms.term\_id
GROUP BY term\_id
ORDER BY blubb ASC
LIMIT 0 , 300

Hab dann mal 20 von denen, die nur 1x benutzt wurden, gelöscht.

Jeder, der hier mitliest, hat schon gemerkt, dass es dieses Jahr deutlich aktiver zugeht, es gibt mehr Posts, mehr Veränderungen am Blog in weniger Zeit, mehr Aktionen und auch mehr Projekte. Das einzige Projekt, was ich bisher nicht vorgestellt habe, ist Konnas Blogseminar - dabei habe ich inzwischen die vierte Sitzung bearbeitet.

Kurz zum Projekt: Beim Blogseminar geht es darum, seinen Blog technisch und inhaltlich zu optimieren und insgesamt attraktiver zu gestalten, für sich selbst und natürlich für die Leser. Im Idealfall steigt dadurch auch die Leserzahl. Hier einfach mal nachholenderweise Zusammenfassungen der ersten vier Sitzungen, danach sollte jeder verstehen worum es geht. Ich finde das Projekt bisher sehr vielversprechend und konnte schon deutliche Erfolge verzeichnen. Selbst falls sich meine Besucherzahl nicht deutlich erhöhen sollte, werde ich sicher eine Menge lernen.

1. Sitzung

Angefangen hat es ganz leicht mit Grundlagen, die jede Website haben sollte, aber nichtsdestotrotz bei mir gefehlt haben: Meta-Tags. Die verpasst man dem Quellcode seines Blogs, damit er in Suchmaschinen besser gefunden und angezeigt wird. Konkret ging's um Beschreibung und Tags - hab ich dann mal ergänzt. Die Bonusaufgabe bearbeite ich nebenbei - neue Blogs besuchen, kommentieren und die Reaktion der Blogger beobachten. Sowas liebe ich ja.

2. Sitzung

Neue Inhalte für Konzertheld.de. Aus dieser Sitzung sind die neue About-Seite, die mich beschreibende Tagwolke in der rechten Sidebar und die Erklärungsseite für Feeds entstanden.

3. Sitzung

Sitzung 3 hatte ich schon vorher erledigt. Kategorien und Tags sollten optimiert werden, das mache ich eh immer wieder. Als Bonusaufgabe sollte man seinen Blog in sozialen Netzwerken bekannt machen und auf diese vom Blog aus verlinken - das war kurz vorher geschehen, die Social Net Icons sind ja inzwischen nicht mehr soo neu.

4. Sitzung

Bei der aktuell laufenden Sitzung geht es darum, fortlaufenden Content zu haben. Eine Sitzung, die mir gar nicht gepasst hat, denn ich blogge meist sehr spontan und in Schüben. Trotzdem habe ich die Aufgabe mal durchgezogen und jeden Tag gebloggt. Ich würde jetzt gerne die Besucherzahlenkurve zeigen, aber der Habari Media Silo spinnt irgendwie und Flickr ist grad komplett tot, also müssen Worte reichen. Die Aufgabe war, 7 Tage lang jeden Tag einen Post zu veröffentlichen. Hab ich so grad geschafft, Montag bis Sonntag. Die Besucherzahlen sind von Anfang an gesunken und erreichten am Donnerstag einen Tiefstand von 15. Hmpf. Danach ging's dafür dann steil aufwärts bis zum Höchststand seit ich Piwik nutze - 31 Besucher am Sonntag. Wie soll ich das jetzt auswerten? Und: Wieso hatte ich bei meinem unregelmäßigen Geblogge unter Wordpress noch Besucherzahlen von 50-80 Besuchern pro Tag (mit Semmelstatz)?

Die Bonusaufgabe der aktuellen Sitzung besteht darin, eine andere Art Content als bisher zu veröffentlichen. Ich hoffe ich schaffe es noch diese Woche, alle meine mehr oder weniger ausgearbeiteten Custom Post Types fertigzustellen, dann gibt's eine Präsentation von dem was Habari leisten kann, wenn man sich ein bisschen Zeit nimmt (und PHP beherrscht).

Hier im Blog werden, wenn das Theme gerade richtig funktioniert, externe Links anders dargestellt als interne, und bei den internen wiederum die, die zu Posts führen anders als die die zu anderen Inhalten führen. Damit ich nicht immer von Hand die CSS-Klassen angeben und das target-Attribut für externe Links setzen muss, habe ich mir zuerst ein Makro geschrieben (G11 sei Dank), später dann ein PHP-Script was die Datenbank durchforstet. Das war auch deshalb nötig, weil ich keine Lust hatte, von Hand alle alten Posts durchzugehen und die Links zu markieren.

Da ich irgendwie immer noch zu faul bin die Makros zu benutzen oder die Links zu markieren, benutze ich das Script immer noch ab und an. Und mittlerweile habe ich beschlossen, einen CronJob dafür einzurichten. Dann ist's auch nicht schlimm, wenn ich mal vergesse einen Link zu markieren.

Externe Links sollten sich zur Abgrenzung von der Website, von der aus man sie aufruft, in einem neuen Fenster bzw. heutzutage ja eher in einem neuen Tab öffnen. Ich verstehe die Entwickler von Webseiten, bei denen das nicht der Fall ist, nicht. Der Aufwand ist minimal und mir sind keine Probleme bekannt. Es nervt total, wenn man einem externen Link folgt und die Seite auf der man vorher war dann direkt weg ist. Meine Meinung, aber vielleicht teilen einige Leute die ja.

Für den Fall biete ich jedenfalls mein Script zum Download an. Also, für den Fall, dass jemand meine Meinung teilt, auch einen Wordpress-Blog hat und in diesem Links markieren möchte. Man muss oben seine Domain angeben, damit das Script interne URLs erkennt. Danach müssen die Datenbankdaten angegeben werden. Anschließend werden die Posts durchlaufen und per regulären Ausdrücken auf Links überprüft. Die URL wird bei internen Links gestrichen, einige Schreibweisenfehler werden korrigiert. CSS-Klassen werden gesetzt (ggf. anpassen!) und das target-Attribut bei externen Links. Abschließend geht das Ganze zurück in die Datenbank. An verschiedenen Stellen habe ich Kontrollelemente eingebaut, die genutzt werden können, um die Arbeit des Scripts zu überprüfen; das macht natürlich nur Sinn, wenn man das Schreiben in die Datenbank dieweil deaktiviert.

Das Script darf zu nicht-kommerziellen und kommerziellen Zwecken frei benutzt und verändert werden. Daher keine noch so freie Lizenz, sondern ausnahmsweise mal: Macht was ihr wollt! :D (Das bedeutet in der Konsequenz übrigens auch den Ausschluss jeglicher Haftung durch mich. Sichert also im Zweifel eure Datenbank vorher - ich hab auch mal was kaputt gemacht damit, weil n Fehler drin war.)

Falls wirklich jemand die Datei lädt und benutzt, wär's cool, wenn derjenige hier einen Kommentar schreiben würde. Das gilt auch, wenn noch Fehler drin sind. Auch Fragen sind willkommen, alles wie immer halt hahahah

Achtung Update: Das Script produziert in seiner aktuellen Version Fehler, was man daran sieht, dass es den Link zu sich selbst geschrottet hat -.- herunterladen kann man es, wenn man das http:// killt funktioniert natürlich nur intern. Extern fehlt ein konzertheld.de/ zwischen dem http:// und dem wp-content. Ich fixe das dann mal und gebe ein neues Release heraus.

Links markieren PHP Script

Vor ein paar Tagen wurde ich auf die Idee gebracht, einen Fotoservice zu nutzen statt direkt ins Blog zu posten. Als Alternative zu dem ebenfalls vorgeschlagenen DeviantArt hielt ich das für sinnvoll und habe mich mal bei Flickr angemeldet, bisher mit mäßiger Begeisterung. Direkt in der nächsten Nacht hatte ich meine Zugangsdaten vergessen und habe es nicht geschafft den wiederzufinden - also noch einen Account erstellt.

Nachdem dann heute das Flickr-Wordpress-Plugin nicht so der Knaller ist und mir Flickr selbst außerdem recht überladen erscheint (Community-Krams, bla, Werbung, Yahoo, nerv...) hab ich mir dann Picasa angeschaut, was schonmal deutlich einfacher war dank vorhandenem Google-Account. Picasa Web verlangt zwar für das Hochladen von mehr als 5 Fotos gleichzeitig das Programm Picasa, was aber nicht besonders tragisch ist, da mir das auf Anhieb gefällt und ich eh noch ne Verwaltung für meine Tonnen von Fotos gebrauchen kann. Im Hochladen ist es schneller und die Picasa-Website ist deutlich schlanker.

Mittlerweile fliegen in Wordpress zwei Picasa- und ein Flickr-Plugin rum, das bisherige Lightbox-Plugin und noch ein paar Stückchen von einem neuen, das ich noch nicht ans Laufen bekommen habe. Und alles nur, weil ich meine Fotos von extern einbinden wollte. Das letzte Picasa-Plugin gefällt mir mit Abstand am Besten, nicht nur, weil es das einzige ist, was zumindest die Bilder ordentlich anzeigt (manchmal zumindest), sondern auch weil es (in der Demo) am Schönsten aussieht und die besten Funktionen bietet. Außerdem ist der Quellcode vielfältig anpassbar und übersichtlich. Es handelt sich um picasaView von sattes-faction.

Als Überblick über die noch vorhandenen Schwierigkeiten hier noch mein Kommentar auf der Anbieterwebsite, zu dem ich hoffentlich eine Lösung bekomme:

Moin, die Demo sieht ja sehr gut aus, leider funktioniert bei mir das ein oder andere nicht. Die Bilder werden angezeigt, soweit läuft’s. Allerdings funktioniert weder das Javascript-Blättern (es blättert einfach weiterhin per PHP) noch Lightbox. Ich verwende Lightbox2 von http://www.m3nt0r.de/blog/lightbox-wordpress-plugin/ , aber erst hat Lightbox das Bild nicht geladen und jetzt geht es gar nicht mehr auf. Dafür lande ich bei Google auf einer Fehlerseite, die mir solange meldet, die Datei existiere nicht, bis ich die exakt gleiche URL von Hand aufrufe - sieht nach einer Sperre aus, so dass ich keine Fotos verlinken darf. Allerdings funktioniert es auch aus dem Blog heraus, _nachdem_ ich das Bild einmal von Hand aufgerufen habe. oO

Wenn es helfen würde, würde ich auch das von Dir empfohlene Lightbox-Plugin benutzen, das tut auch was ich haben will, allerdings verstehe ich die Installation nicht… in welche Datei soll ich diesen Header einfügen? Und ist es richtig, dass das Plugin nicht bei den Plugins erscheint?

Viele Fragen… hoffe Du kannst mir helfen. Gerne auch per Mail.
Viele Grüße,
Christian

Edit: Dank den Bemühungen des Plugin-Autors funktioniert es jetzt. hahahah Die Testposts sind entsprechend auch alle weg.

Seit ich bei E.ON den Programmcodeblock zum Update der Datenbank geschrieben habe, stört mich die irre lange Ausführungszeit. Es geht dabei darum, von ca 300.000 Datensätzen anhand zweier Felder zu prüfen, ob sie bereits in der Datenbank sind, und ggf. Ergänzungen vorzunehmen. Beide Felder enthalten numerische Werte.

Bisher habe ich dazu ein Recordset geladen, was alle Datensätze in der Tabelle enthält, und dann eine Schleife geschrieben die alle eventuell zu ergänzenden Datensätze durchläuft. Darin wurde dann jedesmal ein Filter auf das Recordset gesetzt, und entweder blieb dann genau ein Datensatz über oder keiner, wenn's keiner war, musste ich den ergänzen. Das hat natürlich immer ewig gedauert, so etwa 1,5h, denn je nachdem wie intelligent Access da arbeitet, waren das 300.000 Durchläufe - für jeden der 300.000 Datensätze.

Jetzt habe ich einfach mal, in der Hoffnung den Vorgang vielleicht wenigstens auf ein Drittel reduzieren zu können, eine ganz andere Methode gewählt: Ich erstelle ein zweidimensionales Boolean-Array (für jedes Feld eine Dimension) mit den minimalen und maximalen Werten der Fehler als Grenzen (... To ..., ... To ... mit ReDim, Dim lässt da nur konstante Werte zu, meine sind aber dynamisch, da es sich um IDs einer anderen Datenbanktabelle handelt). Dann durchlaufe ich das Recordset, bei dem ich vorher immer den Filter setzen musste, einmal komplett und setze dabei im Array alle Felder, die durch das Recordset angegeben werden, auf true (meinarray (rs("feld1"), rs("feld2")) = true). So erhalte ich ein Array, in dem die vorhandenen Felder markiert sind.

Das Recordset wird jetzt schon nicht mehr benötigt. Der nächste Schritt durchläuft alle möglichen Werte für die beiden Felder (verschachtelte Schleife) und prüft dabei, ob der Wert im Array an der gerade durch die Schleifen gegebenen Stelle false ist. Falls ja, wird das Wertepaar in der Datenbank ergänzt. Dadurch, dass das Array vom minimalen zum maximalen Wert der Felder dimensioniert ist, gibt es, wenn die Tabelle, der die IDs entstammen, nicht durchgehend ist (Datensätze gelöscht...), mehr Positionen im Array als abgefragt werden, die dann auch auf false stehen. Macht aber nix, da die Schleife, in der die Ergänzungen vorgenommen werden, mit den tatsächlich eingetragenen Werten arbeitet und so keine IDs eingetragen werden, die es gar nicht mehr gibt.

Ergebnis: Statt 1,5 Stunden dauert der Vorgang jetzt vielleicht noch 20 Sekunden... Hätte nicht gedacht, dass es SO ineffizient ist, mit einem Recordset zu arbeiten. Anscheinend wird doch keine Kopie im Programm angelegt, sondern immer direkt auf die Datenbank zugegriffen.

Was vielleicht noch anzumerken ist, wäre die Tatsache, dass ich beim Anlegen des Recordsets nebenbei den Zugriffsmodus auf "adLockBatchOptmistic" gesetzt habe, was sich vom Namen her passender anhört als "adLockReadOnly", welches ich zuvor verwendet hatte. Die Beschreibung sagte was anderes, deshalb hab ich das zuvor nicht benutzt. Was genau jetzt den größeren Geschwindigkeitsvorteil ausgemacht hat, weiß ich nicht, ist mir aber eigentlich auch egal :D

In unserem Informatikunterricht verwenden wir momentan als Einstieg in maschinennahes Programmieren ein Flash-Tool namens LogiFlash. Damit lassen sich simple Schaltungen bauen, im einfachsten Fall auf der Basis von Schalter (Strom an oder aus), Anzeigen (Lampe an/aus) und logischen Gattern (And, Or, Xor, Not).

Da wir uns in der Einführungsstunde mit dem Binärsystem befasst haben, unter anderem mit dem schriftlichen Addieren von Binärzahlen, und ich gerade Langeweile hatte, habe ich eine Addierschaltung für Binärzahlen mit bis zu drei Stellen gebaut (im Fall des Entstehens einer vierstelligen Zahl wird links angezeigt, dass noch eine 1 im Übertrag steht). Hab's durchgetestet und funktioniert hahahah

Ich hab noch nicht ganz verstanden, warum, aber offensichtlich funktioniert die Schaltung auch, wenn man die von mir dafür gebaute Komponente gar nicht hat. Die Schaltung ist addierer-dreistellig, um sie zu laden, müsst ihr euch von dem Link oben die Flashdatei laden und zusammen mit einem Ordner "circuits" irgendwo speichern. In den Ordner "circuits" kommt dann der Addierer. Dann kann man in der Flashdatei oben den Button für XML öffnen benutzen und durch Eingabe des Dateinamens ohne Endung die Schaltung laden und benutzen.

Edit: UPS. Das Element, was ich zuerst nicht verstanden und daher als unbrauchbar verworfen habe, tut genau das was ich jetzt in zwei Stunden Arbeit gebaut habe... :mrgreen: Soll heißen: Ich habe den Va-Adder nachgebaut und dafür zwei Ha-Adder eingebaut. :D Dabei war ich so froh, dass ich den Ha-Adder gefunden habe, der mir das Ganze etwas vereinfacht hat... mal schaun, ob ich den auch nachgebaut kriege :D (und ja, ich weiß nicht, was die Buchstaben bedeuten) ;)

Edit 2: Okay, den Ha-Adder auch noch selber zu bauen aus Or, Xor, And und Not war jetzt auch nicht so schwierig... aber nett, da sieht man mal wie man alles zusammensetzen kann ^^ Ganz simpel der Ha-Adder, den ich so erweitert habe, dass bei Schaltung beider Eingänge auch beide Ausgänge geschaltet werden (sonst ist es S für einen Eingang und Cout für beide). Davon hab ich dann zwei kombiniert, um schließlich mit recht komplizierten Verbindungen dass zu bauen, was der Va-Adder tut... meine Güte... so im Nachhinein betrachtet, total umständlich, ich hab bestimmt zwischendurch was eingebaut was ich hinterher in der Schaltung wieder deaktiviert habe. :D

 1