Repräsentation von logischen Ausdrücken im Computer



  • Hi,

    wie werden normalerweise logische Aussagen im Computer dargestellt? Zum Beispiel für Expertensysteme oder Künstliche Intelligenz?



  • Als Binärzahlen



  • @Mods: bitte den Troll löschen. Das ist eine ernstgemeinte Frage.



  • Leider aber eine sehr schlecht gestellte.

    Im Arbeitsspeicher der Computers steht Programmcode, der dann von der CPU ausgeführt wird. Je nach Programmiersprache und Compiler werden Datenstrukturen (z.B. Klassen in C++) unterschiedlich als Assembler-Code abgebildet.
    Nun hast du beispielsweise eine Klasse, die eine Logische Aussage darstellt und ein Array enthält, in dem der Ausdruck z.B. in Postfix-Notation dargestellt ist.

    Wie du dir jetzt sicher denken kannst, ist das nur eine Art von vielen, "Logische Aussagen" im Computer abzuspeichern.
    Alle haben sie eine unterschiedliche Struktur, das einzige, was alle gemeinsam haben ist, dass sie in eine dem Computer verständliche Maschinensprache umgewandelt werden, und das ist nun mal ein Binärcode.



  • Heinzelotto schrieb:

    Wie du dir jetzt sicher denken kannst, ist das nur eine Art von vielen, "Logische Aussagen" im Computer abzuspeichern.
    Alle haben sie eine unterschiedliche Struktur, das einzige, was alle gemeinsam haben ist, dass sie in eine dem Computer verständliche Maschinensprache umgewandelt werden, und das ist nun mal ein Binärcode.

    ^^aussagen sind ja was feststehendes, die könnte man auch in tabellenform speichern. komplexe logische funktionen (die mit variablen arbeiten) treten im programmcode als verknüpfung von logischen grundelementen auf (and, or, not). und die sind dann wieder kleine elektronische schaltungen, die mit spannungspegeln operieren (z.b. 0 volt für 'falsch' und +3.3 volt für 'wahr').
    🙂



  • Mein Problem ist, dass Du die Frage verstanden hast, aber dich dennoch dazu entschlossen, eine formal korrekte aber nutzlose Antwort zu geben. Das ist das Problem dieses Unterforums, das von besserwisserischen Pedanten, die nach zwei Wochen Unimathe auf einem Formalitätstrip sind, dominiert wird.

    Bitte Thread löschen oder schließen. Ich eröffne das nochmal in RudP, wo wahrscheinlich ein Java vs. Regular Expressions Flame daraus wird, aber immer noch besser als das.



  • ^^falls du mich meinst: ich bin wirklich der letzte, der irgendwas 'formal korrektes' von sich gibt. aber schau dir doch mal die programmiersprache prolog an. die wird gern für expertensysteme genommen.
    🙂



  • Ich glaube, das Problem liegt bei mir, ich fange an zu merken, dass ich nicht weiß, was du mit "Logische Aussagen" meinst. Kannst du das noch einmal genauer erläutern?

    Ich habe getan, was ich konnte, um deine Frage zu beantworten, aber für Rätselspielchen fehlt mir auch die Lust.



  • Ich habe eine Vermutung was er mein en könnte:

    z.B. Bool. Oder er meint nen Array von Bool für logische Ausdrücke etc.

    Speichert Bool das wirklich nur als ein Bit? Wenn nein würde man mit 10 Bool schon 10 Byte oder noch mehr "verschwenden". Wie ginge es dann besser?

    Würde man eine Zahl als bool Aussagen ansehen z.B. 1010010 Wie kann man dann effizient einzelne Bits der Zahl verknupfer mit Logischen Ausdrücken?

    Ich kenn mich nicht so mit Assembler aus, aber kann man damit einzele Bits effektiv manipulieren? (z.B das 7. Bit der 1. Zahl mit dem 3. Bit der 2. Zahl ver ODERN.

    Ich denke seine Frage geht in diese Richtung!


Log in to reply