„Boolean“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
RoBri (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Artikel verlinkt oder nach oben gezogen / Kleinigkeiten / + Belege fehlen |
||
Zeile 1: | Zeile 1: | ||
{{Belege fehlen}} |
|||
Ein '''Boolean''' [{{IPA|ˈbuːliən}}], benannt nach [[George Boole]], ist ein Element einer [[Boolesche Algebra|booleschen Algebra]]. Eine Sonderform mit nur zwei Zuständen ist in der [[Digitaltechnik]] die '''Schaltvariable''' ({{enS|switching variable}}) bzw. bei der [[Programmierung]] der boolesche [[Datentyp]] zur Darstellung der logischen [[Wahrheitswert]]e ''wahr'' und ''falsch''. |
Ein '''Boolean''' [{{IPA|ˈbuːliən}}], benannt nach [[George Boole]], ist ein Element einer [[Boolesche Algebra|booleschen Algebra]].<ref name="Mathes22">{{Literatur |Autor=Markus A. Mathes, Jochen Seufert |Titel=Programmieren in C++ für Elektrotechniker und Mechatroniker |Verlag=Springer Vieweg |Ort=Wiesbaden |Datum=2022 |Sprache=de |ISBN=978-3-658-38500-2 |Kapitel=Kapitel 9.1: Elementare Datentypen – Boolesche Werte |Seiten=45f |DOI=10.1007/978-3-658-38501-9}}</ref> Eine Sonderform mit nur zwei Zuständen ist in der [[Digitaltechnik]] die '''Schaltvariable''' ({{enS|switching variable}}) bzw. bei der [[Programmierung]] der boolesche [[Datentyp]] zur Darstellung der logischen [[Wahrheitswert]]e ''wahr'' und ''falsch''. |
||
== Grundlagen: boolesche Mathematik und Schaltalgebra == |
== Grundlagen: boolesche Mathematik und Schaltalgebra == |
||
Zeile 5: | Zeile 6: | ||
Sonderform der booleschen Algebra ist die [[Schaltalgebra]], die ''Schaltvariable'' kann nur einen von wenigen Werten annehmen: |
Sonderform der booleschen Algebra ist die [[Schaltalgebra]], die ''Schaltvariable'' kann nur einen von wenigen Werten annehmen: |
||
* Hier sind es meist zweiwertige (binäre) boolesche Variablen – in der Fachsprache versteht man unter ''boolescher Variable'' im Allgemeinen eine Schaltvariable im engeren Sinne. Dieses [[Dichotomie|dichotome]] Wertepaar wird je nach Anwendung u. |
* Hier sind es meist zweiwertige (binäre) boolesche Variablen – in der Fachsprache versteht man unter ''boolescher Variable'' im Allgemeinen eine Schaltvariable im engeren Sinne. Dieses [[Dichotomie|dichotome]] Wertepaar wird je nach Anwendung u. a. als <code>wahr/falsch</code> bzw. <code>true/false</code> ([[Aussagenvariable]]), oder <code>1/0</code> ([[Binärzahl]]) bezeichnet. In der [[Elektronische Datenverarbeitung|elektronischen Datenverarbeitung]] werden die beiden Werte mit [[Elektrische Spannung|Spannungs-]] oder [[Elektrischer Strom|Strompegeln]] dargestellt: <code>HIGH, H</code> oder <code>1</code> bzw. <code>LOW, L</code> oder <code>0</code> (Null) – als Schaltung entspricht das <code>Ein/Aus</code>, oder aber <code>–1/1</code>, was einem [[Flipflop]] entspricht. |
||
* Daneben gibt es in der Anwendung häufig auch dreiwertige Schaltvariablen in der Form <code>–1/0/1</code> (mathematisch eine [[Vorzeichen (Zahl)|vorzeichenbehaftete]] einstellige Binärzahl oder ein ternäres Zahlensystem <code>0/1/2</code>), also <code>HIGH/NULL/LOW</code>, etwa in der [[ |
* Daneben gibt es in der Anwendung häufig auch dreiwertige Schaltvariablen in der Form <code>–1/0/1</code> (mathematisch eine [[Vorzeichen (Zahl)|vorzeichenbehaftete]] einstellige Binärzahl oder ein [[Ternärsystem|ternäres Zahlensystem]] <code>0/1/2</code>), also <code>HIGH/NULL/LOW</code>, etwa in der [[Steuerungstechnik|Steuerungs-]] und [[Regelungstechnik]] (<code>VORWÄRTS/STOPP/RÜCKWÄRTS</code>). Boolesche- bzw. Schaltalgebra ist aber prinzipiell über beliebigem Zeichenvorrat (Wertebereich) möglich. |
||
== Digitaltechnik == |
== Digitaltechnik == |
||
In der |
In der Digitaltechnik werden boolesche Werte durch unterschiedliche elektrische Spannungsbereiche (sog. [[Logikpegel]]) realisiert. Die konkreten Spannungsgrenzen hängen von der verwendeten Technik ab (z. B. [[Transistor-Transistor-Logik]] oder [[Complementary metal-oxide-semiconductor|CMOS]]). |
||
== Programmierung == |
== Programmierung == |
||
Im Bereich der [[Softwareentwicklung]] versteht man unter einem booleschen Ausdruck einen [[Ausdruck (Programmierung)|Ausdruck]], der nur die beiden |
Im Bereich der [[Softwareentwicklung]] versteht man unter einem booleschen Ausdruck einen [[Ausdruck (Programmierung)|Ausdruck]], der nur die beiden Wahrheitswerte [[Aussagenlogik#Umgangssprachliche Einleitung|''True'' und ''False'']] (englisch für ''wahr'' und ''falsch'') annehmen kann. Solche Werte können miteinander [[Logischer Operator|logisch verknüpft]] und Variablen eines passenden Typs zugewiesen werden. Sie finden bei [[Sprunganweisung]]en Verwendung um den [[Kontrollfluss]] zu ändern, in der Regel bei [[Bedingte Anweisung und Verzweigung|bedingten Anweisungen]] oder [[Schleife (Programmierung)|Schleifen]]. |
||
Viele [[Programmiersprache]]n stellen dafür einen eigenen Datentyp zur Verfügung, etwa unter der Bezeichnung ''boolean'' ([[Algol 60]], [[Pascal (Programmiersprache)|Pascal]], [[Java (Programmiersprache)|Java]], [[Lua]], [[Ada (Programmiersprache)|Ada]], [[Visual Basic Classic]], [[BASIC]]) oder ''bool'' ([[Algol 68]], [[C-Sharp|C#]], [[C++]], [[PHP]], [[Python (Programmiersprache)|Python]]) oder ''logical'' ([[Fortran]]). Der Boolean ist ein [[Datentyp#Elementare Datentypen|elementarer Datentyp]]. |
Viele [[Programmiersprache]]n stellen dafür einen eigenen Datentyp zur Verfügung, etwa unter der Bezeichnung ''boolean'' ([[Algol 60]], [[Pascal (Programmiersprache)|Pascal]], [[Java (Programmiersprache)|Java]], [[Lua]], [[Ada (Programmiersprache)|Ada]], [[Visual Basic Classic]], [[BASIC]]) oder ''bool'' ([[Algol 68]], [[C-Sharp|C#]], [[C++]], [[PHP]], [[Python (Programmiersprache)|Python]]) oder ''logical'' ([[Fortran]]). Der Boolean ist ein [[Datentyp#Elementare Datentypen|elementarer Datentyp]].<ref name="Mathes22" /> |
||
Zur Repräsentation eines booleschen Wertes genügt prinzipiell ein einzelnes [[Bit]], um die beiden möglichen Zustände zu repräsentieren. Aus technischen Gründen wird jedoch in der Regel eine andere Repräsentation gewählt, meist abhängig von der [[Wortbreite]] des verwendeten Systems, wobei bei C++ Vektoren für diesen Typ optimiert sind. Wird ein boolescher Wert mit einem Ganzzahltyp dargestellt, steht meist 0 für ''falsch'' und alles ungleich Null (häufig wird −1 oder 1 verwendet) für ''wahr''. Anders in der Linux |
Zur Repräsentation eines booleschen Wertes genügt prinzipiell ein einzelnes [[Bit]], um die beiden möglichen Zustände zu repräsentieren. Aus technischen Gründen wird jedoch in der Regel eine andere Repräsentation gewählt, meist abhängig von der [[Wortbreite]] des verwendeten Systems, wobei bei C++ Vektoren für diesen Typ optimiert sind. Wird ein boolescher Wert mit einem Ganzzahltyp dargestellt, steht meist 0 für ''falsch'' und alles ungleich Null (häufig wird −1 oder 1 verwendet) für ''wahr''. Anders in der [[Linux]]- bzw. [[Unix-Shell]]-Programmierung: Hier steht ein Wert größer Null für einen Fehler und im übertragenen Sinne für ''falsch'', während Null für einen erfolgreichen Programmaufruf und so für ''wahr'' steht. |
||
== Weblinks == |
== Weblinks == |
||
* {{SEP|https://plato.stanford.edu/entries/boolalg-math/|The Mathematics of Boolean Algebra|J. Donald Monk}} |
* {{SEP|https://plato.stanford.edu/entries/boolalg-math/|The Mathematics of Boolean Algebra|J. Donald Monk}} |
||
== Einzelnachweise == |
|||
<references /> |
|||
[[Kategorie:Mathematische Logik]] |
[[Kategorie:Mathematische Logik]] |
Version vom 8. Dezember 2024, 17:29 Uhr
Ein Boolean [George Boole, ist ein Element einer booleschen Algebra.[1] Eine Sonderform mit nur zwei Zuständen ist in der Digitaltechnik die Schaltvariable (englisch switching variable) bzw. bei der Programmierung der boolesche Datentyp zur Darstellung der logischen Wahrheitswerte wahr und falsch.
], benannt nachGrundlagen: boolesche Mathematik und Schaltalgebra
Eine boolesche Variable im Allgemeinen ist eine Variable, die nur endlich viele Werte oder Zustände annehmen kann: Mit seinem Werk The Mathematical Analysis of Logic von 1847 legte George Boole einen Grundstein für die formale Logik und die Rechentechnik. Die Menge dieser Werte bildet einen Zeichenvorrat.
Sonderform der booleschen Algebra ist die Schaltalgebra, die Schaltvariable kann nur einen von wenigen Werten annehmen:
- Hier sind es meist zweiwertige (binäre) boolesche Variablen – in der Fachsprache versteht man unter boolescher Variable im Allgemeinen eine Schaltvariable im engeren Sinne. Dieses dichotome Wertepaar wird je nach Anwendung u. a. als
wahr/falsch
bzw.true/false
(Aussagenvariable), oder1/0
(Binärzahl) bezeichnet. In der elektronischen Datenverarbeitung werden die beiden Werte mit Spannungs- oder Strompegeln dargestellt:HIGH, H
oder1
bzw.LOW, L
oder0
(Null) – als Schaltung entspricht dasEin/Aus
, oder aber–1/1
, was einem Flipflop entspricht. - Daneben gibt es in der Anwendung häufig auch dreiwertige Schaltvariablen in der Form
–1/0/1
(mathematisch eine vorzeichenbehaftete einstellige Binärzahl oder ein ternäres Zahlensystem0/1/2
), alsoHIGH/NULL/LOW
, etwa in der Steuerungs- und Regelungstechnik (VORWÄRTS/STOPP/RÜCKWÄRTS
). Boolesche- bzw. Schaltalgebra ist aber prinzipiell über beliebigem Zeichenvorrat (Wertebereich) möglich.
Digitaltechnik
In der Digitaltechnik werden boolesche Werte durch unterschiedliche elektrische Spannungsbereiche (sog. Logikpegel) realisiert. Die konkreten Spannungsgrenzen hängen von der verwendeten Technik ab (z. B. Transistor-Transistor-Logik oder CMOS).
Programmierung
Im Bereich der Softwareentwicklung versteht man unter einem booleschen Ausdruck einen Ausdruck, der nur die beiden Wahrheitswerte True und False (englisch für wahr und falsch) annehmen kann. Solche Werte können miteinander logisch verknüpft und Variablen eines passenden Typs zugewiesen werden. Sie finden bei Sprunganweisungen Verwendung um den Kontrollfluss zu ändern, in der Regel bei bedingten Anweisungen oder Schleifen.
Viele Programmiersprachen stellen dafür einen eigenen Datentyp zur Verfügung, etwa unter der Bezeichnung boolean (Algol 60, Pascal, Java, Lua, Ada, Visual Basic Classic, BASIC) oder bool (Algol 68, C#, C++, PHP, Python) oder logical (Fortran). Der Boolean ist ein elementarer Datentyp.[1]
Zur Repräsentation eines booleschen Wertes genügt prinzipiell ein einzelnes Bit, um die beiden möglichen Zustände zu repräsentieren. Aus technischen Gründen wird jedoch in der Regel eine andere Repräsentation gewählt, meist abhängig von der Wortbreite des verwendeten Systems, wobei bei C++ Vektoren für diesen Typ optimiert sind. Wird ein boolescher Wert mit einem Ganzzahltyp dargestellt, steht meist 0 für falsch und alles ungleich Null (häufig wird −1 oder 1 verwendet) für wahr. Anders in der Linux- bzw. Unix-Shell-Programmierung: Hier steht ein Wert größer Null für einen Fehler und im übertragenen Sinne für falsch, während Null für einen erfolgreichen Programmaufruf und so für wahr steht.
Weblinks
- J. Donald Monk: The Mathematics of Boolean Algebra. In: Edward N. Zalta (Hrsg.): Stanford Encyclopedia of Philosophy.
Einzelnachweise
- ↑ a b Markus A. Mathes, Jochen Seufert: Programmieren in C++ für Elektrotechniker und Mechatroniker. Springer Vieweg, Wiesbaden 2022, ISBN 978-3-658-38500-2, Kapitel 9.1: Elementare Datentypen – Boolesche Werte, S. 45 f., doi:10.1007/978-3-658-38501-9.