ALGORITHMEN TEIL XII: Cogito errare est

    • p. specht schrieb:

      P.S.: Hat es je jemand geschafft, einen funktionierenden Label: mitten in einer Zeile zu platzieren?
      Nein, das geht (noch) nicht. Ein Label muss am Ende der Zeile stehen.

      In X4 wird es ab der nächsten Testversion dann auch innerhalb der Zeile gehen. Nach dem Doppelpunkt des Labels folgt dann direkt (!) der Doppelpunkt zum Beenden der logischen Zeile! Aber das bleibt unter uns. Denn wirklich übersichtlicher wird ein Programm dadurch nicht. ;-)

      Gruß
      Roland
      Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD / ATI Radeon HD4770 512 MB / Windows 7(32) - XProfan X3
      AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X3


      http://www.xprofan.de
    • Noch etwas aus der Rubrik "Dinge, die so nicht im Handbuch stehen":

      Quellcode

      1. cls
      2. declare x³, y²
      3. x³ = 5.56
      4. y² = $1FFFFFFFFFFFFFFF
      5. print 8*sizeof(x³);"Bit Single:",x³
      6. print 8*sizeof(y²);"Bit Quad: ",y²
      7. waitinput
      8. end
      Hintergrund: Für die ersten Versuche, die Variablentypen Single und Quadint einzuführen, habe ich bequemlichkeitshalber zunächst am Postfix-System festgehalten. Das gefiel mir aber nicht und dann habe ich halt die Variablenverwaltung umgeschrieben und die Typbezeichner eingebaut.

      Gruß
      Roland
      Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD / ATI Radeon HD4770 512 MB / Windows 7(32) - XProfan X3
      AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X3


      http://www.xprofan.de
    • Meine Meinung: ...

      Abt. Kleiner Integerbereiche-Vergleich (Bei Floats: "Löcherloser" Bereich)
      ===============================================
      x³ (+ /- & 24 bit) = -16.777.216 ... +16.777.215 (Aber Float 6.5-stellige Genauigkeit)
      x& ( +/- & 31 bit) = -2.147.483.648 ... +2.147.483.647 (4-Byte signed Integers = sInt)
      x_! (+/- & 53 bit) = -/+ 9.007.199.254.740.992 (Ganzzahlbereich von Doubleprecision-Floats)
      x² ( +/- & 63 bit) = -9.223.372.036.854.775.808 ... +9.223.372.036.854.775.807 (8-Byte sInt)
      Gruss

      P.S.: Leider wird x³=val("-1e3") zu Null...

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • Abt. Münzen rotieren lassen
      ==================
      Gerade gelernt: Die berühmte Euler-Formel für die Wobbelscheibe:
      Drehwinkel_der_Markierung_pro_Sekunde = Wobbelrate_[Hz] *(1/cos(Scheibensteilheitswinkel)-1)
      Gruss

      P.S.: ... = Vorarbeiten, um einen virtuellen Kreisel realistisch rotieren zu lassen
    • Abt. Abschlußarbeiten: Eine Ära geht zu Ende
      ============================
      Laut Zukunftsforscher Prof. Dr. Gunther Dueck wird kein Stein auf dem anderen bleiben. Auch andere Prognostiker sehen eine völlig neue Welt auf uns zukommen.

      a - Herkömmliche Firmenhierarchien werden obsolet, alle Verwaltungstätigkeiten (auch staatliche) in den nächsten 7 Jahren vollautomatisiert,
      b - Computer werden Beratungstätigkeiten wo auch immer vollständig übernehmen, denn die jungen "Digital Natives" verlassen sich nicht mehr auf menschliche Berater, weil diese gegenüber Internet-Surfen keinen Mehrwert mehr bieten können,
      c - auch mittlere und höhere SachbearbeiterInnen-Jobs werden (spätestens durch Industrie 4.0 und die Herstellung von Kompatibilität aller Systeme) unnötig werden

      Ich persönlich sehe es heute noch kritischer:

      d - Home Electronics bis hin zur Kaffeemaschine mit Internetanschluß stellen sich auf Lebensgewohnheiten ihrer Besitzer ein, melden Abweichungen aber auch dem Staatsschutz ("Präsident Trump" hat gerade den Datenschutz von US-Bürgern drastisch aufgeweicht und private Verhaltensdaten zum handelbaren Gut gemacht!)
      e - Big Data gibt großen Welt-Firmen riesige Informationsvorsprünge vor kleineren,
      f - selbstfahrende Autos brauchen kein Lenkrad mehr, die Autoindustrie wird voll durchrobotisiert, das Transportwesen (auch die Lagerlogistik) benötigt keine Menschen mehr
      g - Quantencomputing mit >2000 qbit lässt bisherige Cryptographiesysteme blass aussehen,
      h - der Computer wird die bilddiagnostische Medizin auch in der Auswertung revolutionieren,
      i - Drohnen und UBoot-Drohnen erhalten AI und Entscheidungsgewalt über Leben und Tod, der Krieg wird vollautomatisiert

      Kurz gesagt:
      j - Alles wird für einige Auserwählte besser. Der Rest der Gesellschaft wird von einer computerisierten Sozialindustrie de facto in Pension geschickt, freilich ohne dass das so genannt werden darf:
      k - Ziel wird die Ruhigstellung von Protesten und Demonstrationen sein, z.B. durch staatlich subventionierte geschützte Sektoren sowie andere Scheinarbeitsplätze in ebendieser Sozialindustrie.
      L - Das Leben wird ein ausgeweiteter Spielplatz für Halberwachsene, unsere Schulen werden für unkomplizierte Menschen sorgen.
      m - Und bei zuviel Adrenalin gibts dann Prozac.

      Gruss

      P.S.: ... und dann geht uns das Öl aus. Gute Nacht!

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von p. specht ()

    • Am Ende dieses Themenfadens (aka "Thread") das übliche Inhaltsverzeichnis zu ALGORITHMEN UND LEHRREICHES TEIL XII.
      Gruss

      Spoiler anzeigen

      INHALT von ALGORITHMEN TEIL XII: Cogito errare est
      (lat. für ´Ich denke man irrt sich")

      Profan-Eigenheiten, Utilities
      =============================
      12__003 Prog.: Grenzverhalten des set(´´decimals´´, )-Befehls
      12__008 Prog.: Dateidaten direkt im Programmtext
      12__010 Prog.: Implode
      12__014 Prog.: Font 1-Rahmen zeichnen
      12__031 Abt. Scroll mal wieder: Prog.: Halbwegs guter Textscroller!
      12__031 Link zu älteren Profan-Demos
      12__032 Einfache Fill-Algorithmen: Prog.: FLOODFILL
      12__033 M.Wodrich: Prog.: Eingebauter Fill braucht Begrebzungsfarbe
      12__046 Prog.: BinSearch im Zahlenfeld
      12__145 Frage Mehrfach-Returnwerte?
      12__146 Jubiläum: Profan 25 Jahre alt.
      12__147 RGH gibt 25.07.1992 als Geburstag von Profan als Shareware an.
      12__150 M.Wodrich zur Methode, Parameter mehrfach über 1 spezielle Systenvariablen zu übergeben
      12__150 M.Wodrich: Beispiel-Prog. MinMax.inc
      12__151 Lustige Programmzeilen
      12__153 Jede Menge Sonderzeichen für Variablen
      12__154 Prog. ´Alberner Flattertext´
      12__157 Prog.: Ersatz- und Steuerzeichen erzeugen/austesten

      Hardware
      ========
      12__107 Kurznachrichten von Hardware-Herstellern

      Physik
      ======
      12__002 Prog.: Was wiegt ein schnelles Elektron?
      12__004 Der Physik-Nobelpreis 2016
      12__166 Euler-Wobbelscheibenformel (Rotierende Münze)

      Chemie, Biologie, Medizin
      =========================
      12__005 Der Chemie-Nobelpreis 2016
      12__005 Der Nobelpreis für Medizin 2016

      Mathematik
      ==========
      12__006 Fields-Medaille 2014: Der höchste Mathematik-Preis
      12__029 Abt. Dumm gelaufen: Prog.: Die Macht der Formeln
      12__044 Abt. Trunkierbare Primzahlen
      12__139 Prog. Teil 1: Komplexe Funktionen mit Komplexen Zahlen
      12__140 Prog. Teil 2: Komplexe Funktionen mit Komplexen Zahlen
      12__141 Link: Erklärende Internetseite zu Komplexen Funktionen
      12__158 Prog.: Komplexe Gamma-Funktion

      Rätselecke
      ==========
      12__011 _Rätselecke Nr. 38 ´Dritter Donnerstag´
      12__013 Lösung 38
      12__013 _Rätselecke Nr. 40: ´Papierquadrat´
      12__014 Lösung 40
      12__015 _Rätselecke Nr. 41: ´Regelmäßige Vielecke´
      12__016 _Rätselecke Nr. 42: ´Dreiziffrig´
      12__017 Lösungsprogramm zu Rätsel 42
      12__018 _Rätselecke Nr. 43: ´Quadrate sind auch Rechtecke´
      12__019 Prog.: Lösung zu Nr. 43 Unterbestimmtes Gleichungssystem
      12__020 Wurzel im Kopf
      12__021 _Rätselecke Nr. 44: ´Tod des Winzerkönigs´
      12__024 Lösung zu Nr. 44
      12__025 _Rätselecke Nr. 45: ´Und Hopp!´ Jumpy & Hoppy
      12__027 _Abt. Rätselecke Nr. 46: ´Billige Uhren!´
      12__028 Lösung zu Nr. 46
      12__028 _Abt. Rätselecke Nr. 47: ´Verfressene Gören´
      12__030 _Abt. Rätselecke Nr. 48: ´Keuch´
      12__030 _Rätselecke Nr. 49: ´Alois auf Erkundung´
      12__031 Lösung zu Rätsel 48
      12__031 Lösung zu Rätsel 49
      12__035 _Rätselecke Nr. 50: ´Eindeutiges Alter´
      12__035 _Rätsel 51: ´Medikation´
      12__035 _Rätsel 52: ´Einer-Teilbar´
      12__035 _Rätsel 53: ´Eineinhalb Hühner´
      12__035 _Rätsel 54: ´Sub-Traktion´
      12__036 Heinz Brill: Lösung zu 54
      12__037 Prog.: Lösung von H.Brill nun in XProfan-11.2a
      12__040 _Rätsel Nr. 55: ´Vier Karten´
      12__041 Lösung zu Nr. 50, 51, 52, 53
      12__042 Lösung zu Nr. 55
      12__043 _Rätselecke Nr. 56: ´Sonnwendfest´
      12__057 _Abt. Rätselecke Nr. 57: ´Mit Ziffern 1 bis 5´
      12__059 _Rätselecke Nr. 58: ´Vier von sieben Kätzchen´
      12__060 Lösung zu Nr. 58

      Informatik
      ==========
      12__007 Nevanlinna-Preis für theoretische Informatik

      Kultur, Philosophie
      ===================
      12__009 Prog.: Beliebteste Taufnamen 2016 (D)
      12__034 Philosophisches: Die Geschichte des Nichts



      ***********************************************
      * Profan-Preprocessing und Inline-ASSEMBLER *
      ***********************************************

      XProfan 11.2a mit Inline-Assembler XPIA von Frank Abbing
      ==========================================================
      12__062 Xpia-Prog.: Index aufsetzen per xpia-Assembler mit Profan-11.2a

      XProfan und XPSE von David Strutz (iF)
      ======================================
      12__113 Forderung nach Kompatibilität mit XPIA bzw. XPSE
      12__113 Link auf JRPC, den Pre-Präkompiler für xpse von Jens-Arne Reumschüssel für XProfan ab X2

      XProfan und die FASM.DLL (Erzeugung von relokatiblem Maschinencode aus Assemblerbefehlen)
      ============================================================
      12__114 H.Brill findet Link auf die FASM-DLL und board.flatassembler.net/topic.php?t=6239
      12__115 Link: Informative x86-64 CPU-OpCodes-Internetseite, sehr gut gegliedert!
      12__116 Volkmar bringt FASM.DLL zum laufen
      12__122 RGH stellt Syntax des Inline-Assemblers XASM vor: ASM ´Name´, Anz_Paramerter
      12__124 Prog.: Dank RGH-Tipp läuft FASM.DLL nun auch in XProfan-11
      12__128 RGH entschlüsselt 64 und 66-Prefixes für 16nbit-Kompatibilität
      12__129 RGH bringt FASM.DLL mit USE32 dazu, 32bit-Code zu erzeugen!
      12__129 RGH-Prog. fasmtest.prf; erste Zeile muß USE32 sein
      12__130 Anpassung von fasmtest.prf an XProfan-11
      12__133 Volkmar: Prog. nutzt Datei-Einlesefunktion der FASM.DLL, gibt Maschinencode in Hex aus
      12__135 Volkmar: Stimmt, muss alles relocatibel sein

      XProfan X4 mit Inline-Assembler XASM
      =====================================
      12__047 Prog.: &Index-Benchmarking
      12__050 Heinz Brill: fordert Assembler-Indexierungsprogramm
      12__051 RGH: Entschluß, Inline-Assembler für X4 zu programmieren
      12__053 Xpse-Prog. als Ersatz für Mat Var[]-Indexbelegung
      12__058 H.Brill: Vorschläge für weitere MAT-Befehle
      12__061 Links: INTEL Prozessoren seit 2015
      12__061 Link zum ´Intel CPUs Cheat Sheet´
      12__061 Link zum ´AMD Cheat sheet´ (etwas älter)
      12__061 Link zu einer guten Anfänger-Befehlsübersicht ASM
      12__063 Assembler-Erinnerungschart
      12__063 Link: Vollständige Beschreibung der Makros
      12__063 Link: Double Precision Floatingpoint Befehle in Assembler
      12__063 Link: FPU (Floating Point Unit) Programmierung ´Simply FPU´ von Raymond Filiatreault
      12__065 RGH auf Anregung von H.Brill: Mini-Inline-Assembler
      12__066 H.Brill Link: runtimebasic.net/Assembler:Funktionen:OpCode
      12__068 P.Specht: Skepsis: xpia = Formel-1 Bolide, auf Trabbi quälen?
      12__068 Link: Das aktuelle Intel x86-64 Manual - kennt 11.244 Befehlskombinatoinen!
      12__070 H.Brill: Link Online-Disassembler: defuse.ca/online-x86-assembler.htm#disassembly
      12__071 Hinweis auf Problem mit Absoluten Adressen: Code muss relokatibel sein!
      12__072 Prog.: Konverter ´Hex in C-Style´
      12__074 RGH: Erste Ideen für den Inline-Assembler
      12__077 Erstes lauffähiges Programm mit Inline-Maschinencode
      12__079 Erstes Maschinencode-Programm nach XProfan-11 portiert
      12__080 H.Brill: Wunsch nach Parameterlliste und Labels
      12__083 Volkmar: Relative Sprungdistanzen wichtig
      12__084 M.Wodrich: Parameter-Zahl dem ASM bekanntgeben (für sauberen Rücksprung)
      12__085 Auswahl der wichtigsten Assemberbefehle, Links zu Herstellern
      12__085 Link: Intel programmers manual; AMD programmers reference, VIA (nicht mehr aktiv)
      12__094 Link: Alte Opcodes, die noch funktionieren dürften
      12__095 RGH: Aktueller Syntax-Entwurf ASM - ENDASM
      12__096 H.Brill: Link: Online-Debugger
      12__097 Volkmar: Link auf Asm-Codes
      12__098 Link auf Intel Code table und Version für XProfan einlesbar
      12__100 H.Brill: Online-Assembller wäre am einfachsten, Link zu FASM.dll
      12__104 M.Wodrich: Link auf ref.x86asm.net/ hat auch die 64-Bit-Befehle: Komplett!
      12__122 Ankündigung "RET n" mit n = 4*(Zahl der Parameter Par1...ParN)
      12__131 RGH: Inline-Assembler läuft jetzt im Debug Mode (Prog. ASM & Erläuterung der Funktion)
      12__131 ´ASM´ ersetzt ´PUSH EBP´ und ´MOV EBP,ESP´, ENDASM das ´MOV ESP,EBP:POP EBP:RET x´
      12__132 RGH: Prog.: Komplexeres Beispiel mit ASM
      12__138 Link auf RGH Veröffentlichungsadresse von Xprofan-X4alpha mit Inline Assembler
      12__159 Erster Entwurf für ein Merkblatt Schleifen und Bedingungen in Assembler
      12__160 M.Wodrich: Auszug Merkblatt aus Stackoverflow,com mit Assemblercodes
      12__161 RGH: Inline-Label:: möglich
      12__157 Link: Auszug aus Win32.chm API-Hilfe
      EX12__013 DB n1 :DB n2 :DW nn :DD nnnn :DS ´´Text\z´´ 'Escape-Zeichen werden unterstützt.
      EX12__028 Setfunktion ASMMODE steuert Debugausgabe: 0 keine, 1 Assemblerlisting.lst, 2 Hauptfenster
      EX12__032 Neu: CALL @name und Call label: statt FCALL name_ohne_anführungszeichen
      EX12__036 DH ´´CDE50C68´´ entspricht DS ´´\xCD\xE5\x0C\x68´´
      EX12__042 DM nnnn füllt ab Label: mit nnnn Nullbytes, @name ermittelt Call-Adresse nnnn der Funktion name
      EX12__042 JMP Label führt jetzt Near-Jump (+-2147483647) aus, Call label auch Near-Bereich

      XProfan X4_a Sprach-Neuerungen
      ==============================
      12__065 Vorberlegung von Arrays mit ´MAT Var[] < n´,vermutlich auch mit dynamischen Arrays
      12__065 Neue Befehle: ZIP und UNZIP, einschl. Unterverzeichnisse
      12__155 Parameter-Einstellung von LemonEd zum Starten des XProfan-Programmes: (D)
      12__162 RGH zu ´Dingen die nicht im Handbuch stehen´: x² und x³ als Kuriositäten
      12__163f Grenzen der x³ und x²-´Geistervariablen´. In der Praxis stets an Doku halten!
      12__161 Ankündigung Label:: (inmitten der Zeile),
      12__162 Nicht offiziell in Xprofan X4a: var x²=54-bit-Integer,var x³ = Vorbereitung Single precision float!
      EX12__032_Link: Assemblercodes für das neue X4
      EX12__016 db(´´slxxx´´, ....): Unterstützung von SQLite-Datenbanken (SQLITE.DLL im Pfad)
      EX12__016 db( Wenn für Select (Set(´SQLFile´,...)) Ergebnisdatei Name.xml, wird XML-Datei erzeugt.
      EX12__028 fAddr(´Name´) liefert 0 oder CALL-Adresse der ASM ´Name´ oder ImportFunc oder ImportDLL
      EX12__028 Die 8 Funktionen für die COM-Schnittstelle sind in der Kontainer-Funktion "COM" gelandet.
      EX12__033 MAT x![] < 1.005 klappt!

      Philosophisches
      ==========
      12__167 Abschlußarbeiten: Eine Ära geht zu Ende, Zukunftsforschung, Prognose Prof. Dueck

      P.S.: HIER gibts auch noch ein geziptes Suchprogramm für ALLE BISHERIGEN TEILE I bis XII der Reihe "ALGORITHMEN UND LEHRREICHES". Dabei gilt: I = 01__, III = 03__

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von p. specht ()