Viele werden sicher schon mal von dem großen Spaß "International
Obfuscated C Code Contest" gehört haben, dort geht es seit Jahrzehnten
darum, sehr kleine, aber dennoch schwer durchschaubare Programme in
ANSI-C zu schreiben, die irgendetwas mehr oder weniger nützliches oder
unterhaltsames tun.
(Die Gewinner von 2020 gibt es hier zu sehen:
https://www.ioccc.org/years.html#2020 )
Nun habe ich mich gefragt, ob jemand schonmal daran gedacht hat, sowas
mit (analogelektronischen) Schaltplänen zu veranstalten?
Also auch so mit starker Einschränkung, welche und wieviele Teile
verwendet werden dürfen. Rahmenbedingungen könnten sowas sein wie
maximal 30 Stück marktgängiger, billiger diskreter Bauelemente, keine
ICs, max. 12V 1A Versorgungsspannung oder ähnlich, denn sonst läge die
"Obfuscation" ja nicht im Schaltplan, sondern in der hardware der
Bauelemente...
Gibt es etwas in der Art schon?
Obfuscator schrieb:> Nun habe ich mich gefragt, ob jemand schonmal daran gedacht hat, sowas> mit (analogelektronischen) Schaltplänen zu veranstalten?
Hast du noch nicht genug amerikanische oder gar chinesische
Stromlaufpläne gesehen?
Also: sowas gibt es bereits, allerdings ohne Contest.
W.S.
> Gibt es etwas in der Art schon?
Ja, aber keine traut es sich zuzugeben. :)
Der Sinn hinter Obfuscated C besteht darin das du einen C-Source siehst
den du nicht verstehst, den du aber sofort ausprobieren kannst und der
das macht was einem versprochen wird.
Bei einer Schaltungplan muesstet du dann die fertige Schaltung haben,
sie macht etwas das deinen Erwartungen entspricht und du schaust
dann in die Schaltung und verstehst nicht wieso.
Das gibt es im Prinzip von Schaltplaenen einiger guter Analoggeraete
wo sich Leute wundern warum die Bauteile so verbunden sind wie es nunmal
der Fall ist. Aber da will ja keiner zugeben das er den Schaltplan
nicht versteht.
Olaf
olaf schrieb:> Das gibt es im Prinzip von Schaltplaenen einiger guter Analoggeraete> wo sich Leute wundern warum die Bauteile so verbunden sind wie es nunmal> der Fall ist.
Dieser und ähnliche von anderen genannte Fälle scheinen mir aber nur
"unabsichtlich schlechte Dokumentation" oder "unnötig umfangreich" zu
sein, und nicht bewusst trickreiches Verwenden von Bauteilen auf
unerwartete/überraschende/interessante Weise.
Beim "Obfuscated C Code Contest" liegt der Spaß ja vor allem darin, dass
die Ersteller ganz bewusst wenig Code schreiben, der völlig entgegen
üblicher Programmierstile arbeitet, aber dennoch funktioniert. Habe mir
gerade mal einen der Preisträger angehen, dieses "Tic-Tac-Toe" Spiel,
dass nur aus einem while (*n) { printf(...) } besteht... grandios! -
hätte nicht gewusst, dass "printf" sich als Turing-Automat missbrauchen
lässt :-)
Bei einer analogen Schaltung könnte ich mir z.B. vorstellen, dass ein
Widerstand bewusst als parasitäre Induktivität eingesetzt wird,
Transistoren als Avalanche-Dioden geschaltet werden, Induktivitäten als
parasitäre Widerstände dienen usw.
Und da eine Simulation wohl nur selten all die denkbaren "Tricks"
richtig nachbilden würde, müsste man die Schaltungen für die Auswertung
des Wettbewerbs wohl tatsächlich aufbauen - und schon deshalb Anzahl und
Art der Teile stark limitieren.
Wettbewerbe, Schaltungen, vor allem Funksender mit möglichst wenigen
Bauelementen zu bauen, wobei eben die parasitären Effekte mitgenutzt
werden, gibt es ja. Sas geht auch schon fast in die gleiche Richtung.
> Harmlos!!!! Die echten Aufbauten sind der Hammer! Und die liefen!
Das zaehlt nicht! Das sind ja viele Aufbauten auf einmal. :)
Ich hab mit 18 mal ein Controllerboard auf einem 100x160 Lochraster
aufgebaut. Erst ein MCS48 mit EEPROM und 373, dann noch ein paar 2k Rams
mit Decoder, noch den 8243, dann einen upD7002(AD-Wandler), dann noch
ein 16x7Seg LED aus einem Taschenrechner mit Decoder und Driver, dann
noch einen 8255 und 8253. Natuerlich liegen Logicbausteine dazwischen.
Am Ende war auf der Platine fast kein Loch mehr unbenutzt.
Ist leider irgendwann mal verloren gegangen. Ich glaube damit haette ich
auch teilnehmen koennen. :)
Olaf
Lutz V. schrieb:> Dieser und ähnliche von anderen genannte Fälle scheinen mir aber nur> "unabsichtlich schlechte Dokumentation" oder "unnötig umfangreich" zu> sein, und nicht bewusst trickreiches Verwenden von Bauteilen auf> unerwartete/überraschende/interessante Weise.
Du kannst manche CMOS-Gatter auch analog betreiben. Das sieht im
Schaltplan dann sehr gewöhnungsbedürftig aus.
huhu schrieb:> Du kannst manche CMOS-Gatter auch analog betreiben.
Stimmt, ich habe früher öfters Inverter (und ähnliche einfache
Logikgatter) als Verstärker für Audio missbraucht.