Algorithmen zum Wochenende – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self Algorithmen zum Wochenende Sat, 21 Oct 17 08:47:13 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706570#m1706570 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706570#m1706570 <p>Hello,</p> <p>wie man Primzahlen auf einfache itertive Weise mit dem Computer bestimmen kann, lernt man wohl in jedem Informatik-Seminar für Programmierer.</p> <p>Aber wie kann man eventuell auf ähnliche Weise die vollkommenen Zahlen bestimmen?<br> Hat da jemand einen Tipp für mich?</p> <p>Liebe Grüße<br> Tom S.</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 09:09:52 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706572#m1706572 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706572#m1706572 <p>Hallo TS,</p> <blockquote> <p>Aber wie kann man eventuell auf ähnliche Weise die vollkommenen Zahlen bestimmen?</p> </blockquote> <p>Wenn das so einfach ginge, gäb es kein Geheimnis mehr um die geraden vollkommenen Zahlen. Alle ungeraden vollkommenen Zahlen kannst du dir über Mersenne'schen Primzahlen holen. Davon sind ca. 100 bekannt. Wieviele es gibt, ist hingegen unbekannt.</p> <p>Bis demnächst<br> Matthias</p> <div class="signature">-- <br> Rosen sind rot. </div> Algorithmen zum Wochenende Sat, 21 Oct 17 10:58:52 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706577#m1706577 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706577#m1706577 <blockquote> <p>Hello,</p> <p>wie man Primzahlen auf einfache itertive Weise mit dem Computer bestimmen kann, lernt man wohl in jedem Informatik-Seminar für Programmierer.</p> <p>Aber wie kann man eventuell auf ähnliche Weise die vollkommenen Zahlen bestimmen?<br> Hat da jemand einen Tipp für mich?</p> </blockquote> <p>Hab meine Idee mal in Haskell aufgeschrieben. Um beispielsweise alle vollkommenen Zahlen kleiner als 1000 zu bekommen (<a href="https://repl.it/MztM/1" rel="nofollow noopener noreferrer">https://repl.it/MztM/1</a>):</p> <pre><code class="block language-haskell"><span class="token hvariable">main</span> <span class="token operator">::</span> <span class="token constant">IO</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token hvariable">main</span> <span class="token operator">=</span> <span class="token builtin">putStrLn</span> <span class="token punctuation">(</span><span class="token builtin">show</span> <span class="token punctuation">(</span><span class="token hvariable">perfects</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token hvariable">perfects</span> <span class="token operator">::</span> <span class="token punctuation">[</span><span class="token constant">Int</span><span class="token punctuation">]</span> <span class="token hvariable">perfects</span> <span class="token operator">=</span> <span class="token punctuation">[</span> <span class="token hvariable">n</span> <span class="token operator">|</span> <span class="token hvariable">n</span> <span class="token operator"><-</span> <span class="token punctuation">[</span><span class="token number">1</span><span class="token operator">..</span><span class="token number">1000</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token hvariable">isPerfect</span> <span class="token hvariable">n</span><span class="token punctuation">]</span> <span class="token hvariable">isPerfect</span> <span class="token operator">::</span> <span class="token constant">Int</span> <span class="token operator">-></span> <span class="token constant">Bool</span> <span class="token hvariable">isPerfect</span> <span class="token hvariable">n</span> <span class="token operator">=</span> <span class="token builtin">sum</span> <span class="token punctuation">(</span><span class="token hvariable">divisors</span> <span class="token hvariable">n</span><span class="token punctuation">)</span> <span class="token operator">==</span> <span class="token hvariable">n</span> <span class="token hvariable">divisors</span> <span class="token operator">::</span> <span class="token constant">Int</span> <span class="token operator">-></span> <span class="token punctuation">[</span><span class="token constant">Int</span><span class="token punctuation">]</span> <span class="token hvariable">divisors</span> <span class="token hvariable">n</span> <span class="token operator">=</span> <span class="token punctuation">[</span> <span class="token hvariable">i</span> <span class="token operator">|</span> <span class="token hvariable">i</span> <span class="token operator"><-</span> <span class="token punctuation">[</span><span class="token number">1</span><span class="token operator">..</span><span class="token hvariable">n</span><span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token hvariable">n</span> <span class="token operator">`mod`</span> <span class="token hvariable">i</span> <span class="token operator">==</span> <span class="token number">0</span><span class="token punctuation">]</span> </code></pre> <p>Da besteht natürlich noch viel Optimierungspotenziak, bspw. ist es ziemlich dumm bei der Ermittlung der Teiler von 1 bis n-1 zu laufen.</p> <p>PS: Ein cooles Feature von Haskell ist, dass es mit unendlichen Mengen umgehen kann. Die Liste aller perfekter Zahlen wäre einfach <code>[ n | n <- [1..], isPerfect n]</code>. Das lüftet leider nicht alle Geheimnisse um die Zahlen: wenn ich zum Beispiel Haskell frage, ob die Menge endlich ist, dann terminiert Haskell möglicherweise nicht.</p> Algorithmen zum Wochenende Sat, 21 Oct 17 18:01:09 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706623#m1706623 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706623#m1706623 <p>@@TS</p> <blockquote> <p>wie man Primzahlen auf einfache itertive Weise mit dem Computer bestimmen kann, lernt man wohl in jedem Informatik-Seminar für Programmierer.</p> </blockquote> <p>Auf dem <a href="http://www.vcfb.de/2017/" rel="nofollow noopener noreferrer">Vintage Computing Festival Berlin</a> (wo keiner von euch Banausen mit hin wollte) kam mir die Idee, meinen <a href="http://www.robotrontechnik.de/index.htm?/html/computer/lc80.htm" rel="nofollow noopener noreferrer">LC 80</a> mal wieder rauszukramen und das <a href="https://de.wikipedia.org/wiki/Sieb_des_Eratosthenes" rel="nofollow noopener noreferrer">Sieb des Eratosthenes</a> darauf zu implementieren – in <em>einem Kilobyte</em> RAM für Programm und Daten!</p> <p>Heute mal mit Stift und Papier damit angefangen. Puh, ewig keinen Maschinencode mehr geschrieben!</p> <p>Dummerweise finde ich das Netzteil für den LC 80 gerade nicht. (Ich hatte nur einen Trafo ohne Gehäuse.) Muss mich mal nach einem passenden Netzteil umsehen, um das Ding wieder in Betrieb zu nehmen.</p> <p>LLAP </p> <div class="signature">-- <br> “When UX doesn’t consider <em>all</em> users, shouldn’t it be known as ‘<em>Some</em> User Experience’ or... SUX? #a11y” —<a href="https://twitter.com/thebillygregory/status/552466012713783297" rel="nofollow noopener noreferrer">Billy Gregory</a> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 14:43:26 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706600#m1706600 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706600#m1706600 <p>Hallo Matthias,</p> <p>andersrum, gelle? Die bisher bekannten vollkommenen Zahlen sind gerade.</p> <p><em>Rolf</em></p> <div class="signature">-- <br> sumpsi - posui - clusi </div> Algorithmen zum Wochenende Sat, 21 Oct 17 11:09:29 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706578#m1706578 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706578#m1706578 <p>Hello,</p> <blockquote> <blockquote> <p>wie man Primzahlen auf einfache iterative Weise mit dem Computer bestimmen kann, lernt man wohl in jedem Informatik-Seminar für Programmierer.</p> <p>Aber wie kann man eventuell auf ähnliche Weise die vollkommenen Zahlen bestimmen?<br> Hat da jemand einen Tipp für mich?</p> </blockquote> <p>Hab meine Idee mal in Haskell aufgeschrieben. Um beispielsweise alle vollkommenen Zahlen kleiner als 1000 zu bekommen (<a href="https://repl.it/MztM/1" rel="nofollow noopener noreferrer">https://repl.it/MztM/1</a>):</p> </blockquote> <p>Schon mal vielen Dank für Deine Idee. Grund genug, dass ich mich mal mit Haskell auseinandersetze ;-)</p> <p>Was ich aber noch nicht ganz verinnerlicht habe:<br> Welche Teiler müssen denn definitionsgemäß dabei sein? <code>Eins</code> gehört also immer dazu, die Zahl selber nicht (sonst wäre die Summe ja doppelt so hoch). Aber alle anderen ganzzahligen positiven Teiler gehören nicht unbedingt dazu?!</p> <p>Also könnte man doch einen expansiven Algorithmus auf das Problem ansetzen?</p> <p>Um den mit der aktuellen Digitaltechnik (64 Bit) erschlagen zu können, müsste man also "nur" <em>passende Shift-Befehle</em> einsetzen, bzw. die dazugehörigen Abbildungsfunktionen.</p> <p>Es geht also "nur" darum, den Adressraum virtuell auf <code>N * X</code> Bit zu erhöhen? <em>rara</em><br> Ist mir schon klar, dass das überhaupt schon immer ein Kernproblem der Rechentechnik war.</p> <p>Liebe Grüße<br> Tom S.</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 11:09:55 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706579#m1706579 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706579#m1706579 <p>@@1unitedpower</p> <blockquote> <p>wenn ich zum Beispiel Haskell frage, ob die Menge endlich ist, dann terminiert Haskell möglicherweise nicht.</p> </blockquote> <p>Möglicherweise doch – nach 7,5 Millionen Jahren. Um dann <em>die Antwort</em> auszugeben.</p> <p>LLAP </p> <div class="signature">-- <br> “When UX doesn’t consider <em>all</em> users, shouldn’t it be known as ‘<em>Some</em> User Experience’ or... SUX? #a11y” —<a href="https://twitter.com/thebillygregory/status/552466012713783297" rel="nofollow noopener noreferrer">Billy Gregory</a> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 11:33:24 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706581#m1706581 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706581#m1706581 <blockquote> <p>Schon mal vielen Dank für Deine Idee. Grund genug, dass ich mich mal mit Haskell auseinandersetze ;-)</p> </blockquote> <p>Wenn du einen guten Einstieg suchst, kann ich dir <a href="http://learnyouahaskell.com/" rel="nofollow noopener noreferrer">http://learnyouahaskell.com/</a> wärmstens empfehlen.</p> <blockquote> <p>Was ich aber noch nicht ganz verinnerlicht habe:<br> Welche Teiler müssen denn definitionsgemäß dabei sein? <code>Eins</code> gehört also immer dazu, die Zahl selber nicht (sonst wäre die Summe ja doppelt so hoch). Aber alle anderen ganzzahligen positiven Teiler gehören nicht unbedingt dazu?!</p> </blockquote> <p>Die deutsche Wikipedia definiert die Funktion σ*(n) als Summe aller (positiven) Teiler von n, ausgenommen n, und die Funktion σ(n) als Summe aller (positiven) Teiler inklusive n. Dann kann man die vollkommen Zahlen entweder als { n ∈ ℕ | σ*(n) = n } oder als { n ∈ ℕ | σ(n) = 2n } definieren. Meine Implementierung stützt sich auf die erste Definition.</p> Algorithmen zum Wochenende Sat, 21 Oct 17 11:27:21 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706580#m1706580 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706580#m1706580 <p>Hallo,</p> <blockquote> <blockquote> <p>wenn ich zum Beispiel Haskell frage, ob die Menge endlich ist, dann terminiert Haskell möglicherweise nicht.</p> </blockquote> <p>Möglicherweise doch – nach 7,5 Millionen Jahren. Um dann <em>die Antwort</em> auszugeben.</p> </blockquote> <p>und dann habe die Leute die Frage vergessen </p> <p>Gruß<br> Jürgen</p> Algorithmen zum Wochenende Sat, 21 Oct 17 11:46:46 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706582#m1706582 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706582#m1706582 <p>Hello,</p> <blockquote> <p>Die deutsche Wikipedia definiert die Funktion σ*(n) als Summe aller (positiven) Teiler von n, ausgenommen n, und die Funktion σ(n) als Summe aller (positiven) Teiler inklusive n. Dann kann man die vollkommen Zahlen entweder als { n ∈ ℕ | σ*(n) = n } oder als { n ∈ ℕ | σ(n) = 2n } definieren. Meine Implementierung stützt sich auf die erste Definition.</p> </blockquote> <p>Der Hintergrund ist mir schon klar. Aber wie kann man das nun in einer Programmiersprache seiner Wahl realisieren. Die Sprachen scheitern i.d.R. doch alle an der maximalen Darstellbarkeit für Zahlen.</p> <p>Liebe Grüße<br> Tom S.</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 12:06:00 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706583#m1706583 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706583#m1706583 <blockquote> <p>Der Hintergrund ist mir schon klar. Aber wie kann man das nun in einer Programmiersprache seiner Wahl realisieren. Die Sprachen scheitern i.d.R. doch alle an der maximalen Darstellbarkeit für Zahlen.</p> </blockquote> <p>Sowas wie eine maximale Darstellbarkeit für (natürliche oder ganze) Zahlen gibt es nicht. Haskell kennt zum Beispiel neben beschränkten Datentypen <code>Int</code>, der von -2^29 bis 2^29-1 geht, auch unbeschränkte Datentypen, zum Beispiel für die natürlichen Zahlen. In anderen Programmiersprachen gibt es Bibliotheken dafür. Das Problem ist eher, dass kein Rechner dieser Welt unendlich viel Speicher hat und dieser irgendwann voll läuft und man nicht mehr weitermachen kann, obwohl es eine Repräsentation für jede natürliche Zahl gibt. Man kann sich aber idealisierte theoretische Modelle konstruieren, die diese Beschränkung nicht haben, bspw. die Turing-Maschine oder im Falle von Haskell der Lambda-Kalkül.</p> Algorithmen zum Wochenende Sat, 21 Oct 17 17:30:22 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706621#m1706621 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706621#m1706621 <p>Hello,</p> <blockquote> <blockquote> <p>Der Hintergrund ist mir schon klar. Aber wie kann man das nun in einer Programmiersprache seiner Wahl realisieren. Die Sprachen scheitern i.d.R. doch alle an der maximalen Darstellbarkeit für Zahlen.</p> </blockquote> <p>Sowas wie eine maximale Darstellbarkeit für (natürliche oder ganze) Zahlen gibt es nicht. Haskell kennt zum Beispiel neben beschränkten Datentypen <code>Int</code>, der von -2^29 bis 2^29-1 geht,</p> </blockquote> <p>2^64 wäre dann bei einem 64-Bit-Prozessor schon interessanter ;-P</p> <p>Aber darum ging es ja gerade. Registerbreite ist nur "Peanuts". Wie kann man ELNs darstellen, die weit über die Registerbreite hinausgehen?</p> <p>Also käme als nächste Idee erst einmal eine Grenze für den Zahlenbereich von 0 bis 2^64^64 Bit in Frage. Wie baut man sowas? Da muss man ja dann swappen, weil der Arbeitsspeicher nicht mehr ausreicht. Aber wie kann man den Algorithmus und das Paging so geschickt aufbauen, dass trotzdem wenig Swaps notwendig sind?</p> <p>Glück Auf<br> Tom S. vom Berg</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Sat, 21 Oct 17 14:45:05 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706601#m1706601 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706601#m1706601 <p>Hallo Rolf B,</p> <blockquote> <p>andersrum, gelle? Die bisher bekannten vollkommenen Zahlen sind gerade.</p> </blockquote> <p>Gelle.</p> <p>Bis demnächst<br> Matthias</p> <div class="signature">-- <br> Rosen sind rot. </div> Algorithmen zum Wochenende Mon, 23 Oct 17 16:44:33 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706770#m1706770 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706770#m1706770 <blockquote> <p>Aber darum ging es ja gerade. Registerbreite ist nur "Peanuts". Wie kann man ELNs darstellen, die weit über die Registerbreite hinausgehen?</p> </blockquote> <p>Keine Ahnung wie man bspw. einen Algorithmus zur Addition zweier natürlicher Zahlen direkt in Assembler kodieren würde oder ob so eine Implementierung überhaupt erstrebenswert wäre. Solche Algorithmen implementiert man in der Regel in einer höheren Programmiersprache und lässt den Compiler die Details herausfinden. Du kannst dir ja mal angucken, was der Haskell-Compiler dir ausspuckt, aber ich bezweifle, dass man auf so niedriger Ebene noch etwas vom ursprünglichen Algorithmus wiedererkennt. Immerhin fallen vom menschenlesbaren Programmcode bis zum maschinen-ausführbaren Assemlber-Code einige Transformationen an.</p> Algorithmen zum Wochenende Sat, 21 Oct 17 18:06:46 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706625#m1706625 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706625#m1706625 <p>Hallo,</p> <blockquote> <p>Maschinencode</p> </blockquote> <p>sieht aber korrekt aus ;p</p> <p>Gruß<br> Kalk</p> Algorithmen zum Wochenende Sat, 21 Oct 17 18:15:45 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706626#m1706626 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706626#m1706626 <p>Hello,</p> <blockquote> <p>Auf dem <a href="http://www.vcfb.de/2017/" rel="nofollow noopener noreferrer">Vintage Computing Festival Berlin</a> (wo keiner von euch Banausen mit hin wollte) [...]</p> </blockquote> <p>Stimmt ja gar nicht. Wir waren nur nicht ausreichend primed ;-)</p> <p>Jedenfalls habe ich sowas (Sieb des ...) auch noch in Assembler programmiert, allerdings dann schon für einen 8088, dafür aber schon mit Auslagerungsdatei auf einem DiskDrive <em>puh</em>...</p> <p>Das müsste doch heutzutage schon alles viel einfacher gehen. Einfach Auslagerungsdatei auf 10fachen Hauptspeicher einrichten, usw. ...</p> <p>Oder?</p> <p>Liebe Grüße<br> Tom S.</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Mon, 23 Oct 17 16:55:34 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706772#m1706772 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706772#m1706772 <p>@@1unitedpower</p> <blockquote> <p>Immerhin fallen vom menschenlesbaren Programmcode bis zum maschinen-ausführbaren Assemlber-Code einige Transformationen an.</p> </blockquote> <p>Assembler-Code ist nicht maschinen-ausführbar, sondern – mehr oder weniger – menschenlesbar.</p> <p>Am in diesem Thread schon erwähnten LC 80 könnte ich dir den Unterschied anschaulich machen. Da gibt man nämlich keinen Assembler-Code ein, sondern den tatsächlichen Maschinencode.</p> <p>LLAP </p> <div class="signature">-- <br> “When UX doesn’t consider <em>all</em> users, shouldn’t it be known as ‘<em>Some</em> User Experience’ or... SUX? #a11y” —<a href="https://twitter.com/thebillygregory/status/552466012713783297" rel="nofollow noopener noreferrer">Billy Gregory</a> </div> Algorithmen zum Wochenende Mon, 23 Oct 17 17:07:09 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706774#m1706774 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706774#m1706774 <blockquote> <p>Am in diesem Thread schon erwähnten LC 80 könnte ich dir den Unterschied anschaulich machen. Da gibt man nämlich keinen Assembler-Code ein, sondern den tatsächlichen Maschinencode.</p> </blockquote> <p>Stimmt natürlich, bis zum Maschinencode wäre es noch eine weitere Code-Transformation. Kann man sich natürlich auch angucken, aber da wird man wohl noch weniger schlau draus.</p> Algorithmen zum Wochenende Mon, 23 Oct 17 17:24:19 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706778#m1706778 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706778#m1706778 <p>Hello,</p> <blockquote> <blockquote> <p>Am in diesem Thread schon erwähnten LC 80 könnte ich dir den Unterschied anschaulich machen. Da gibt man nämlich keinen Assembler-Code ein, sondern den tatsächlichen Maschinencode.</p> </blockquote> </blockquote> <p>@Gunnar Bittersmann:<br> Hast Du tatsächlich in Maschinencode programmiert? Das war eklig! Ich habe das damals ganz schnell übersprungen. Assembler und Assembler-IDEs waren da schon interessanter, auch als ich schon lange meterlange Programme in Turbo-Pascal geschrieben habe, bzw. der Kollege in Modula-2. Da gab es immer zeitkritische Passagen, die man mittels "asm" in Assemblercode eingebaut hat. TP oder Modula-2 waren aufgrund der möglichen strengen Typenbindung und des konsequenten Rangecheckings beim DLR und seinen Ablegern vorgeschrieben. Mit C/++ hätten die keine Flugsteuersoftware geschrieben!</p> <blockquote> <p>Stimmt natürlich, bis zum Maschinencode wäre es noch eine weitere Code-Transformation. Kann man sich natürlich auch angucken, aber da wird man wohl noch weniger schlau draus.</p> </blockquote> <p>@1unitedpower:<br> Der ist mMn auch nur interessant, wenn man auf Hardwareebene (Steuerbus, Datenbus, Adressbus und Serial-Parallel-Konvertern) mittels "doofem" Logikanalyser Glitches suchen muss. Damals waren die Analyser nämlich nicht viel schneller, als die produktiven Prozessoren.</p> <p>Liebe Grüße<br> Tom S.</p> <div class="signature">-- <br> Es gibt nichts Gutes, außer man tut es!<br> Das Leben selbst ist der Sinn.<br> </div> Algorithmen zum Wochenende Tue, 24 Oct 17 08:45:16 Z https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706810#m1706810 https://forum.selfhtml.org/self/2017/oct/21/algorithmen-zum-wochenende/1706810#m1706810 <p>@@TS</p> <blockquote> <p>Hast Du tatsächlich in Maschinencode programmiert?</p> </blockquote> <p>Das Programm überlege ich mir schon erst in Assemblersprache. Dann übersetze ich es in Maschinencode – mit Befehlstabelle. Ich bin der Assembler. <em lang="en">That’s where the fun is.</em></p> <p>LLAP </p> <div class="signature">-- <br> “When UX doesn’t consider <em>all</em> users, shouldn’t it be known as ‘<em>Some</em> User Experience’ or... SUX? #a11y” —<a href="https://twitter.com/thebillygregory/status/552466012713783297" rel="nofollow noopener noreferrer">Billy Gregory</a> </div>