Seite 2 von 2 ErsteErste 12
Ergebnis 16 bis 28 von 28

Thema: kleine programmiersprache e

  1. #16
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    #6 Ergänzung.

    Eine Dialoganwendung,
    die mehrere Bediener aus deren Sicht gleichzeitig versorgt,
    braucht meist Sperren beim Zugriff auf Dateien.

    Erleichternd für viele, kann das eine mit dem anderen entfallen.

  2. #17
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    #16 Ergänzung

    Batchbetrieb mit zwei zeitgleichen Anwendungen P1, P2
    ändern Indexdatei.Satz(z) ohne Sperre

    p1(z .e) lesen z.e
    _t(z) e=t(5)

    p2(z e n .r) aendern z.e nach z.n
    r=0 _t(z) a=t(5) (e a r=1)(a e r=1)(r 1 t(5)=n t_)


    p18 aendern z.e
    u=8 p2(z e u r)

    p19 aendern z.e
    u=9 p2(z e u r)


    Anwendung Programm ..... a ..... r ..... u ..... e ..... t ..... || z

    P1 ............................................................................. abcd7
    ..... p1(z .e) ................................................................ abcd7
    ....... _t(z) ...................................................... abcd7 .. abcd7
    ....... e=t(5) ........................................... 7 ..... abcd7 .. abcd7


    P2 ............................................................................. abcd7
    ..... p1(z .e) ................................................................ abcd7
    ..... _t(z) ........................................................ abcd7 .. abcd7
    ..... e=t(5) ............................................. 7 ..... abcd7 .. abcd7









    P1 ........................................................ 7 ..... abcd7 .. abcd7
    ..... p18 ................................................. 7 ..... abcd7 .. abcd7
    ..... u=8 ......................................... 8 .... 7 ..... abcd7 .. abcd7
    ..... p2(z e u r) ................................ 8 .... 7 ..... abcd7 .. abcd7
    ..... r=0 .................................. 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... _t(z) ................................ 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... a=t(5) ..................... 7 ..... 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... (e a r=1) .................. 7 ..... 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... (a e r=1) .................. 7 ..... 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... (r 1 ......................... 7 ..... 0 .... 8 .... 7 ..... abcd7 .. abcd7
    ..... t(5)=n ...................... 7 ..... 0 .... 8 .... 7 ..... abcd8 .. abcd7
    ..... t_) ........................... 7 ..... 0 .... 8 .... 7 ..... abcd8 .. abcd8



    P2 ......................................................... 7 ..... abcd7 .. abcd8
    ..... p19 .................................................. 7 ..... abcd7 .. abcd8
    ..... u=9 .......................................... 9 .... 7 ..... abcd7 .. abcd8
    ..... p2(z e v r) ................................. 9 .... 7 ..... abcd7 .. abcd8
    ..... r=0 ................................... 0 .... 9 .... 7 ..... abcd7 .. abcd8
    ..... _t(z) ................................. 0 .... 9 .... 7 ..... abcd8 .. abcd8
    ..... a=t(5) ....................... 8 ..... 0 .... 9 .... 7 ..... abcd8 .. abcd8
    ..... (e a r=1) .................... 8 ..... 1 .... 9 .... 7 ..... abcd8 .. abcd8
    ..... (a e r=1) .................... 8 ..... 1 .... 9 .... 7 ..... abcd8 .. abcd8
    ..... (r 1 t(5)=n t_).............. 8 ..... 1 .... 9 .... 7 ..... abcd8 .. abcd8
    Geändert von ruf012 (02.01.2016 um 12:32 Uhr)

  3. #18
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    Forum mit begrenztem Speicher und Archiv

    Der bereitgestellte Speicher mit physikalischen Auswirkungen bei Entstehung und Betrieb.
    Der bereitgestellte Text mit psychischen Auswirkungen zumindest bei Leseren.




    Admin
    Versorgt Textren mit verfügbarem Speicher.
    Übernimmt freigegebenen Text vollständig oder geändert ins Archiv,
    oder löscht ihn überhaupt.

    Textren
    Erstellen Text innerhalb ihres verfügbaren Speichers
    und geben Text frei.




    Aufwandsmessung in Zeichen, ebentuell auch Worte, Zeilen, Diagramme,..

    Beispiel, ohne Berücksichtigung des Verwaltungsaufwandes
    Freier Speicherplatz in Zeichen

    Anfangswerte
    Speicher.Forum....2^24..16 777 216 - 16 777 216 =..............0
    Speicher.Archiv....2^23....8 388 608 - .............0 =..8 388 608
    Speicher.Admin....2^22....4 194 304 - .............0 =..4 194 304
    Speicher.Textren..2^22....4 194 304 - .............0 =..4 194 304
    Speicher.Hugo............................0 - .............0 =..............0

    Admin versorgt Hugo mit........ 4 096
    Speicher.Textren..............4 194 304 - ......4096 =...4 190 208
    Speicher.Hugo.......................4 096 - ...........0 =.........4 096

    Hugo erstellt Text('abcd')
    Speicher.Hugo.......................4 096 - ...........4 =.........4 092

    Hugo gibt Text('abcd') frei
    Speicher.Hugo.......................4 096 - ...........0 =.........4 096
    Speicher.Admin................4 194 304 - ...........4 =....4 194 300


    Admin überträgt Text('abcd') nach Archiv
    Speicher.Forum..............16 777 216 - 16 777 216 =.............0
    Speicher.Archiv................8 388 608 -..............4 =..8 388 604
    Speicher.Admin................4 194 304 -..............0 =..4 194 304
    Speicher.Textren..............4 194 304 -.........4096 =..4 190 208
    Speicher.Hugo.......................4 096 -..............0 =........4 096




    1)mit neuem Text ('efgh') antworten
    Hugo2 (Hugo: 'abcd')
    STRG-d Syntax: ESC n-neu
    Nur bei ungültiger Eingabe erscheint die Syntax.
    ---
    |
    |..4 belegt
    |
    ---
    n
    (Hugo2: ' ')
    (Hugo2: 'efgh')
    STRG-d Syntax: ESC b n-neu
    ---
    |
    |.....b=Hugo.20160220.144200
    |..4 belegt
    |
    ---




    2)aendern Text
    Hugo (Hugo: 'abcd')
    STRG-d Syntax: ESC p1 n-neu ee-freigeben
    ---
    |
    |..4 belegt
    |
    ---
    ESC
    (Hugo 'abcd')
    (Hugo 'abcde')
    STRG-d Syntax: ESC p1 n-neu ee-freigeben
    ---
    |
    |..5 belegt
    |
    ---




    3)positionieren bei 2 Antworten untereinander
    Hugo3 (Hugo3: 'ijkl')
    STRG-d Syntax: ESC b n-neu ee-freigeben
    ---
    |
    |.....b=Hugo2.20160220.145300
    |..4 belegt
    |
    ---
    b
    Hugo3 (Hugo2: 'efgh')
    STRG-d Syntax: ESC b p1 n-neu
    ---
    |
    |.....b=Hugo.20160220.144200
    |..4 belegt
    |.....p1=Hugo3.20160225.101500
    |
    ---
    b
    Hugo3 (Hugo: 'abcd')
    STRG-d Syntax: ESC p1 n-neu
    ---
    |
    |..4 belegt
    |.....p1=Hugo2.20160220.145300
    |
    ---
    p1
    Hugo3 (Hugo2: 'efgh')
    STRG-d Syntax: ESC b p1 n-neu
    ---
    |
    |.....b=Hugo.20160220.144200
    |..4 belegt
    |.....p1=Hugo3.20160225.101500
    |
    ---
    p1
    Hugo3 (Hugo3: 'ijkl')




    4)freigeben Text mit 2 Antworten untereinander
    Speicherbedarf wird anderem Textren zugeordnet
    Der letzte Textren gibt Text samt Antworten frei nach Admin

    Hugo2 (Hugo2: 'efgh')
    STRG-d Syntax: ESC b p1 n-neu ee-freigeben
    ---
    |
    |.....b=Hugo.20160220.144200
    |..4 belegt
    |.....p1=Hugo3.20160225.101500
    |
    ---
    ee
    Hugo2 (Forum.Kapitel.a)

    Hugo (Hugo: 'abcd')
    STRG-d Syntax: ESC p1 n-neu ee-freigeben
    ---
    |
    |..4 belegt
    |..4 p1=Hugo2.20160220.145300
    |
    ---
    ee
    Hugo (Forum.Kapitel.a)


    Hugo3 (Hugo3: 'ijkl')
    STRG-d Syntax: ESC b n-neu ee-freigeben
    ---
    |
    |..8 b=Hugo2.20160220.145300
    |..4 belegt
    |
    ---
    ee
    Hugo3 (Forum.Kapitel.a)




    5)positionieren bei n Antworten nebeneinander

    Hugo (Hugo: 'abcd')
    STRG-d Syntax: ESC p p1..p4 n-neu ee-freigeben
    ---
    |
    |..4 belegt
    |.....p1=Hugo..
    |.....p2=Hugo2..
    |.40 p3=Hugo3..
    |.....p4=Hugo4..
    |.....p
    |
    ---
    p Syntax: ESC b p p5..p8
    ---
    |
    |.....b
    |.....p5=Hugo5..
    |.....p6=Leo62..
    |....16 p7=Leo17..
    |....48 p8=Leo18..
    |.....p
    |
    ---
    p Syntax: ESC b p9..p11
    ---
    |
    |.....b
    |.....p9=Otto25..
    |.20 p10=Karl01..
    |.....p11=Maximilian25..
    |
    ---
    b Syntax: ESC b p p5..p8
    ---
    |
    |.....b
    |.....p5=Hugo5..
    |152 p6=Leo62..
    | 16 p7=Leo17..
    | 48 p8=Leo18..
    |.....p
    |
    ---
    ESC
    Hugo (Hugo: 'abcd')
    ESC
    Hugo (Forum.Kapitel.a)
    Geändert von ruf012 (12.03.2016 um 08:03 Uhr)

  4. #19
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    _#14 e

    Dateien schliessen.

    Das Laufzeitsystem öffnet eine geschlossene Datei
    bei deren ersten Definition,
    und schliesst sie mit Ende des Programmes,
    das diese Definition enthält.



    p1
    p2 p4

    p2
    D_=dat01 i=1 i_ D_=dat02 i=2 i_ p3

    p3
    D_=dat01 i=3 i_ D_=dat03 i=4 i_

    p4
    D_=dat01 i=5 i_ D_=dat03 i=7 i_



    Datei
    '(' öffnen
    ')' schliessen

    ................................ i ... dat01 ... dat02 ... dat03
    p1 p2
    p2 D_=dat01 ................... (
    ... i=1 ....................... 1
    ... i_ ............................... ( 1
    ... D_=dat02 ................................. (
    ... i=2 ....................... 2
    ... i_ ............................................ ( 2
    ... p3
    p3 D_=dat01 .................... ( 1
    ... i=3 ....................... 3
    ... i_ ............................... ( 1 3
    ... D_=dat03 .............................................. (
    ... i=4 ....................... 4
    ... i_ ........................................................ ( 4
    p3. .......................................................... ( 4 )
    p2. ................................. ( 1 3 ) ... ( 2 )
    p1 p4
    p4 D_=dat01 ...................... ( 1 3
    ... i=5 ........................ 5
    ... i_ ............................... ( 1 3 5
    ... D_=dat03 .............................................. ( 4
    ... i=7 ........................ 7
    ... i_ ....................................................... ( 4 7
    p4. .................................. ( 1 3 5 ) .......... ( 4 7 )
    p1.
    Geändert von ruf012 (29.08.2016 um 14:58 Uhr)

  5. #20
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    vorzeitiges Programmende

    Ausgabe der Werte unmittelbar davor.
    Vom Laufzeitsystem nach D@, falls nicht möglich, nach einer Systemdatei.
    ..... verwendete Dateien
    ..... aktuelle Module mit aktuellen Programmen und Modulvariablen
    ..... falls möglich Text vom Betriebssystem



    Beispiel.
    Im Modul mod001 wurden
    im Programm
    .... p1 die Protokolldatei prot01 geöffnet.
    .... p7 die Ausgabedatei li02 gelöscht, geöffnet und geschlossen.
    .... p4 die Ausgabedatei li10 geöffnet.




    Im Modul mod001 waren die Programme p1 p2 p7 und p4 im aktuellen Ablauf.

    Es wurden die Parameter 17 25 .'abc' dem Modul mod002 übergeben,
    mit den Prozeduren Q1 und Q2.

    Modul mod010 übernahm davon den Parameter 'abc' in seine Prozedur li10.




    prot01:

    D@
    mod001.p1 (prot01

    D_
    mod001.p7 0(li02)
    mod001.p4 (li10
    ------------------------------------------


    mod001.p1 p2 p7 p4
    A ......... 25
    B ......... 'abc'
    C ......... (1) ..... 19
    ............ (5) ..... (8) .......... 'def'
    ....................... (12) ........ 25
    ............ (12) ... (1) .......... 'ghi'
    ....................... (2)-(4) .... 27
    ....................... (5) ......... 'jkl'
    D .......... ''

    i ........... 4
    j ........... 2
    ---------------------------------------------------------------


    17 25 .'abc'

    mod002.Q1 Q2
    Q ........ 'abc'
    i ......... 17
    j ......... 25
    ---------------------------------------------------------------


    .'abc'

    mod010.li10
    T ........ 'abc'
    ---------------------------------------------------------------

    Betriebssystem.'0CXa013': 'abc' nicht nach 'li10' geschrieben.
    Geändert von ruf012 (17.09.2016 um 13:46 Uhr)

  6. #21
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    Modulbeginn

    Alle Modulvariablen werden gelöscht.

    Das erste Programm im Modul
    ist einziger Eingang und einziger Ausgang des Moduls.

    Dateidefinitionen werden übernommen.

    Paramter, nur zum Lesen,
    werden in die entsprechenden Modulvariablen kopiert.

    Von beschreibbaren Parametern
    wird die Adresse der aktuellen Variable übernommen.



    #1 #15 Ergänzung
    Die weiteren Programme im Modul bedürfen
    keiner Parameterisierungsmöglichkeit.

  7. #22
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    Der Versuch einer Zusammenfassung


    Dateien enthalten jeweils einen Modul, erstellt mit einem einfachen Editor.

    Das erste Programm im Modul ist dessen
    einzige Aufrufstelle und einzige Rückgabestelle.
    Nur dieses erste Programm ist parameterisierbar.
    Weitere Programme können durch Leerzeilen getrennt sein.

    Jedes Programm besteht aus zwei Zeilen.
    Eine Zeile mit Programmdefinition und eventuell Kommentar,
    eine weitere Zeile für Anweisungen.
    Alle Programme eines Moduls können dessen Variable verändern,
    Variable ausserhalb des Moduls nur als '.'Parameter.

    Indexrechnung mit mehrdimensionalen Feldern möglich.


    Keine Schachtelung von Bedingung und Wiederholung.
    Keine Rekursion.

    Von Betriebssystem erkannte Fehlersituationen
    bewirken ein Ende im Laufzeitsystem, ohne Rückkehr zum aufrufenden Programm.

    Das Laufzeitsystem versucht
    nach der Protokolldatei zu schreiben, sonst nach einer Systemdatei.


    Die Dateizuordnung wird nach unten weitergegeben
    und bleibt nach der Rückkehr erhalten,
    auch wenn im gerufenen Programm die Zuordnung zwischenzeitlich geändert wurde.
    Gleichzeitig können höchstens
    .. eine Protokolldatei,
    .. eine Eingabedatei und
    .. eine Ausgabedatei
    zugeordnet sein.




    Zeile {0-80}Zeichen
    Modul Programm0 {0-31}Programm

    Programm0
    1.Zeile mit Mod['('{1-4}Par')'] [' '{0-1}Kommentar]
    2.Zeile mit {0-16}Anweisung

    Programm
    1.Zeile mit Prog [' '{0-1}Kommentar]
    2.Zeile mit {0-16}Anweisung
    ----------

    Anweisung ' ' Anw | ' ' Anw2

    Anw
    .. Bedingung, wenn W(1)<W(2)(<W(3)) dann Anweisung durchführen
    .... '(' {2-3}(W' ') {0-8}Anw2')'
    .. Wiederholung, solange W(1)<W(2)(<W(3)) Anweisung durchführen
    .... '(_' {2-3}(W' ') {0-8}Anw2')'

    Anw2
    .. Aufruf '.'Mod['('{1-}Par')'] | Prog['('{1-4}Par')']
    .. Zuweisung Var'=' ['+'|'-'] W ['+'|'-'|´/´|´*´ W]
    .. Datei
    .... 'D0='d Datei löschen
    .... 'D@='d Protokolldatei zuordnen
    .... 'D_='d Ausgabedatei zuordnen
    .... '_D='d Eingabedatei zuordnen
    .... Var'@' Variable nach Protokolldatei weiterschreiben
    .... Var'_' Variable nach Ausgabedatei weiterschreiben
    .... '_'Var Variable von Eingabedatei lesen
    ----------


    Mod=a[{1-}an] Modulname
    Prog=a[{1-3}an] Programmname

    Par=Kon|[.]Var
    W=Kon|Var
    Kon={1-32}k
    Var=a['('W['-'W]')']

    an:=a | 0-9 alphanumerisches Zeichen
    a:='A'-'z' alphabetisches Zeichen
    d=a[{0-}k] für Dateinamen zugelassene Zeichen
    k abdruckbare Zeichen, ein' = '''', leer = ''




    Beispiele
    #5 sum
    #7 sort
    #1 Zuordnung, logische Operation, Datei bearbeiten
    #14 Dateizugriffe, Indexdatei
    #5 indizierte Variable

    Übersetzer
    #7 leere Eingabe
    #4 #15 Syntax prüfen

    Laufzeitsystem
    #21 Modulbeginn
    #4 L1(.a)
    #14 #19 Dateien schliessen
    #20 vorzeitiges Programmende,
    .... zusätzlich Protokoll
    ...... mit Adresse der nicht mehr durchgeführten Anweisung der Maschinensprache
    ...... und einer Darstellung des letzten Programmes in Maschinensprache.

  8. #23
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    #22

    Zuweisung Var'=' W ['+'|'-'|´/´|´*´ W]

    Wegen a=0-a entfallen die vorlaufenden Vorzeichen.
    Geändert von ruf012 (12.12.2016 um 17:46 Uhr)

  9. #24
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    #20 Zusätzlich.
    Das vorzeitig beendete Programm in Maschinensprache,
    mit den adressierten Konstanten und Variablennamen.

    p1
    a=1 b=0 a=a/b

    01 2000 5008 a 1
    01 2004 5000 b 0
    04 2000 2004 b a
    ------------------------
    Division durch Null.
    p1 vorzeitig beendet.

  10. #25
    Linux-Enthusiast
    Punkte: 43.148, Level: 100
    Level beendet: 0%, Punkte für Levelaufstieg benötigt: 0
    Aktivität: 47,0%
    Errungenschaften:
    Your first GroupThree FriendsCreated Album picturesTagger First ClassVeteran
    Auszeichnungen:
    Community AwardDownloadsArm of LawMaster Tagger
    Avatar von ToBeFree
    Registriert seit
    05.08.2011
    Ort
    Wuppertal, NRW
    Rating
    1413 - 29
    Verein
    SC Tornado Wuppertal 1991
    Beiträge
    1.018
    Punkte
    43.148
    Level
    100

    AW: kleine programmiersprache e

    Ergibt die Gleitkommadivision nicht Unendlich? Unterscheidet die Programmiersprache zwischen verschiedenen Zahlentypen, bzw. was ergibt "3/2"?
    http://musescore.com/tobefree

    Zitat Zitat von derair
    also ich hab jetztd en internet explorer 9 und der ist toll
    der ist viel übersichtliger geworden und íst viel besser als fire fox
    "Alle aussteigen, wir klauen jetzt einen A380."

  11. #26
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    #22
    (... von Var=a['(' W['-'W] ')'] ... )
    nach Var=a['('an['+'|'-'|'_'an]')']


    a='ijmn'
    b=2
    ................ c
    c=a(b) ...... 'j'
    c=a(b+1) ... 'm'
    c=a(b-1) ... 'i'
    c=a(b_3) ... 'jmn'



    #24
    Ebenso ( ) (_ ) bei Bedingung und Wiederholung
    mit den seit dem letzten Klammernbeginn abgearbeiteten Anweisungen.



    #25
    Ein Division durch Null gilt als undefiniertes Ergebnis,
    bewirkt damit ein vorzeitiges Ende des Programmes.

    Zahlen werden so dargestellt, wie sie eingegeben werden,
    oder aus einer Zuweisung entstehen.
    Indizierungen der abdruckbaren Darstellung sind möglich.
    Auch Umwandlungen zwischen abdruckbar und binär.


    p0
    p1 p2 p3 p4

    p1
    a=1,000.000 T='a='+a T@

    p2
    b=3/2 T='b='+b T@

    p3
    c=4/2 T='c='+c T@

    p4
    d=b(3) T='d'+d T@

    Protokolldatei:
    a=1,000.000
    b=1,5
    c=2
    d=5

    ........ mögliche interne Darstellung von 1.5
    a=3/2 (X'00000001' C'.' X'00000101')





    ................. intern
    a=12 ......... X'00001100'
    a=''+a ....... C'12'
    a='0'+a ...... C'012'
    a=0+a........ X'00001100'
    Geändert von ruf012 (17.12.2016 um 13:24 Uhr)

  12. #27
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    Aufruf aus einer Fremdsprache
    Eingabe von Datei

    Fremdsprache
    up1
    P1=C'1234567890123456789012345678901234567890'
    P2=X'00001010'
    Call up2(P1,P2)

    up2
    C1=P1+char(P2)
    Open Datei1
    Write C1 to Datei1
    Close Datei1
    Call e1

    Open Datei1
    Read C1 from Datei1
    Close Datei1
    P1=C1(1 to 40)
    P2=num(C1(41 to 45))

    Datei1
    '123456789012345678901234567890123456789000010'


    e1
    _D=Datei1 _T ......... C'12345678901234567890123456789012'
    ............................ C'3456789000010'
    p(1)=T(1) .............. C'12345678901234567890123456789012'
    a=T(2) .................. C'3456789000010'
    p(2)=a(1_8) ........... C'34567890'
    p(3)=0+a(9_5) ........ X'00001010'
    Geändert von ruf012 (24.12.2016 um 15:08 Uhr)

  13. #28
    Klarer Fixpunkt
    Punkte: 7.800, Level: 61
    Level beendet: 84%, Punkte für Levelaufstieg benötigt: 50
    Aktivität: 90,0%
    Errungenschaften:
    Veteran5000 Experience Points
    Themenstarter
    Avatar von ruf012
    Registriert seit
    12.08.2011
    Beiträge
    502
    Punkte
    7.800
    Level
    61

    AW: kleine programmiersprache e

    Umwandlung abdruckbar, binär
    a=12 ..... X'00001100'
    a=‘‘+a ..... C'12'
    a=0+a ..... X'00001100'
    b=0-a
    b=‘‘+b ..... C‘-12‘
    c=‘AC‘-‘AB‘ ..... X‘00000001‘


    Vergleichen
    (0 a 2 T=‘a=1‘ T@)

    A=‘ABCD‘ B=‘ACDE‘
    a=0-1 b=B-A (a b 1 T=‘A=B‘ T@)


    #22_ Ergänzung

    Dateien enthalten jeweils einen Modul, erstellt mit einem einfachen Editor,
    ohne Kopieren und Suchen.

    Kon=''''{1-32}k''''|{1-10}z
    an=a|z alphanumerisches Zeichen
    z=0-9 Ziffer
    Geändert von ruf012 (12.05.2017 um 15:18 Uhr)

Ähnliche Themen

  1. Lauter kleine Kätzchen
    Von Kiffing im Forum Burgschenke
    Antworten: 18
    Letzter Beitrag: 27.03.2014, 19:41

Stichworte

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
. . . . .Email address contact imprint