[{"@context":"http:\/\/schema.org\/","@type":"BlogPosting","@id":"https:\/\/wiki.edu.vn\/wiki6\/2020\/12\/01\/datentyp-wikipedia\/#BlogPosting","mainEntityOfPage":"https:\/\/wiki.edu.vn\/wiki6\/2020\/12\/01\/datentyp-wikipedia\/","headline":"Datentyp – Wikipedia","name":"Datentyp – Wikipedia","description":"Dieser Artikel befasst sich mit Datentypen. F\u00fcr allgemeinere Typen, einschlie\u00dflich der Funktionen und Module, siehe Typ (Informatik). Python 3: Die","datePublished":"2020-12-01","dateModified":"2020-12-01","author":{"@type":"Person","@id":"https:\/\/wiki.edu.vn\/wiki6\/author\/lordneo\/#Person","name":"lordneo","url":"https:\/\/wiki.edu.vn\/wiki6\/author\/lordneo\/","image":{"@type":"ImageObject","@id":"https:\/\/secure.gravatar.com\/avatar\/44a4cee54c4c053e967fe3e7d054edd4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/44a4cee54c4c053e967fe3e7d054edd4?s=96&d=mm&r=g","height":96,"width":96}},"publisher":{"@type":"Organization","name":"Enzyklop\u00e4die","logo":{"@type":"ImageObject","@id":"https:\/\/wiki.edu.vn\/wiki4\/wp-content\/uploads\/2023\/08\/download.jpg","url":"https:\/\/wiki.edu.vn\/wiki4\/wp-content\/uploads\/2023\/08\/download.jpg","width":600,"height":60}},"image":{"@type":"ImageObject","@id":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/1\/10\/Python_3._The_standard_type_hierarchy.png\/220px-Python_3._The_standard_type_hierarchy.png","url":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/1\/10\/Python_3._The_standard_type_hierarchy.png\/220px-Python_3._The_standard_type_hierarchy.png","height":"311","width":"220"},"url":"https:\/\/wiki.edu.vn\/wiki6\/2020\/12\/01\/datentyp-wikipedia\/","wordCount":4049,"articleBody":"Dieser Artikel befasst sich mit Datentypen. F\u00fcr allgemeinere Typen, einschlie\u00dflich der Funktionen und Module, siehe Typ (Informatik). Python 3: Die StandardtyphierarchieIn der Informatik und Computerprogrammierung, a Datentyp oder einfach Art ist ein Datenattribut, das dem Compiler oder Interpreter mitteilt, wie der Programmierer die Daten verwenden m\u00f6chte. Die meisten Programmiersprachen unterst\u00fctzen grundlegende Datentypen von Ganzzahlen (unterschiedlicher Gr\u00f6\u00dfe), Gleitkommazahlen (die sich reellen Zahlen ann\u00e4hern), Zeichen und Booleschen Werten. Ein Datentyp beschr\u00e4nkt die Werte, die ein Ausdruck, z. B. eine Variable oder eine Funktion, annehmen kann. Dieser Datentyp definiert die Operationen, die an den Daten ausgef\u00fchrt werden k\u00f6nnen, die Bedeutung der Daten und die Art und Weise, wie Werte dieses Typs gespeichert werden k\u00f6nnen. Ein Datentyp stellt eine Reihe von Werten bereit, aus denen ein Ausdruck (dh eine Variable, eine Funktion usw.) seine Werte \u00fcbernehmen kann.[1][2]Konzept[edit]Datentypen werden in Typsystemen verwendet, die verschiedene M\u00f6glichkeiten zum Definieren, Implementieren und Verwenden dieser Typen bieten. Unterschiedliche Typsysteme gew\u00e4hrleisten ein unterschiedliches Ma\u00df an Typensicherheit.Fast alle Programmiersprachen enthalten explizit den Begriff Datentyp, obwohl verschiedene Sprachen unterschiedliche Terminologie verwenden k\u00f6nnen.Zu den g\u00e4ngigen Datentypen geh\u00f6ren:Zum Beispiel in der Programmiersprache Java der Typ int stellt die Menge von 32-Bit-Ganzzahlen dar, deren Wert von \u20132.147.483.648 bis 2.147.483.647 reicht, sowie die Operationen, die f\u00fcr Ganzzahlen ausgef\u00fchrt werden k\u00f6nnen, wie Addition, Subtraktion und Multiplikation. Eine Farbe kann andererseits durch drei Bytes dargestellt werden, die die Betr\u00e4ge von Rot, Gr\u00fcn und Blau bezeichnen, und durch eine Zeichenfolge, die den Namen der Farbe darstellt.In den meisten Programmiersprachen kann der Programmierer auch zus\u00e4tzliche Datentypen definieren, indem er normalerweise mehrere Elemente anderer Typen kombiniert und die g\u00fcltigen Operationen des neuen Datentyps definiert. Beispielsweise k\u00f6nnte ein Programmierer einen neuen Datentyp mit dem Namen “komplexe Zahl” erstellen, der Real- und Imagin\u00e4rteile enth\u00e4lt. Ein Datentyp stellt auch eine Einschr\u00e4nkung dar, die der Interpretation von Daten in einem Typsystem auferlegt ist und die Darstellung, Interpretation und Struktur von Werten oder Objekten beschreibt, die im Computerspeicher gespeichert sind. Das Typsystem verwendet Datentypinformationen, um die Richtigkeit von Computerprogrammen zu \u00fcberpr\u00fcfen, die auf die Daten zugreifen oder diese bearbeiten.Die meisten Datentypen in der Statistik haben vergleichbare Typen in der Computerprogrammierung und umgekehrt, wie in der folgenden Tabelle gezeigt:Definition[edit](Parnas, Shore & Weiss 1976) identifizierten f\u00fcnf Definitionen eines “Typs”, die – manchmal implizit – in der Literatur verwendet wurden. Typen, einschlie\u00dflich Verhalten, stimmen enger mit objektorientierten Modellen \u00fcberein, wohingegen ein strukturiertes Programmiermodell tendenziell keinen Code enth\u00e4lt und als einfache alte Datenstrukturen bezeichnet wird.Die f\u00fcnf Typen sind:SyntaktischEin Typ ist eine rein syntaktische Bezeichnung, die einer Variablen beim Deklarieren zugeordnet ist. Solche Definitionen von “Typ” geben Typen keine semantische Bedeutung.[clarification needed]DarstellungEin Typ wird anhand seiner Zusammensetzung primitiverer Typen definiert – h\u00e4ufig Maschinentypen.Repr\u00e4sentation und VerhaltenEin Typ ist definiert als seine Darstellung und eine Reihe von Operatoren, die diese Darstellungen bearbeiten.WertebereichEin Typ ist eine Reihe m\u00f6glicher Werte, die eine Variable besitzen kann. Solche Definitionen erm\u00f6glichen es, \u00fcber (disjunkte) Gewerkschaften oder kartesische Typenprodukte zu sprechen.Wertraum und VerhaltenEin Typ ist eine Reihe von Werten, die eine Variable besitzen kann, und eine Reihe von Funktionen, die auf diese Werte angewendet werden k\u00f6nnen.Die Definition in Bezug auf eine Darstellung wurde h\u00e4ufig in imperativen Sprachen wie ALGOL und Pascal vorgenommen, w\u00e4hrend die Definition in Bezug auf einen Wertraum und ein Verhalten in \u00fcbergeordneten Sprachen wie Simula und CLU verwendet wurde.Klassen von Datentypen[edit]Primitive Datentypen[edit]Primitive Datentypen sind normalerweise Typen, die in eine Sprachimplementierung integriert oder grundlegend sind.Maschinendatentypen[edit]Alle Daten in Computern, die auf digitaler Elektronik basieren, werden auf der untersten Ebene als Bits (Alternativen 0 und 1) dargestellt. Die kleinste adressierbare Dateneinheit ist normalerweise eine Gruppe von Bits, die als Byte bezeichnet wird (normalerweise ein Oktett, das aus 8 Bits besteht). Die Einheit, die durch Maschinencode-Anweisungen verarbeitet wird, wird als Wort bezeichnet (Stand 2011)[update]typischerweise 32 oder 64 Bit). Die meisten Anweisungen interpretieren das Wort als Bin\u00e4rzahl, sodass ein 32-Bit-Wort vorzeichenlose Ganzzahlwerte von 0 bis 0 darstellen kann 232– –1{ displaystyle 2 ^ {32} -1} oder vorzeichenbehaftete ganzzahlige Werte von – –231{ displaystyle -2 ^ {31}} zu 231– –1{ displaystyle 2 ^ {31} -1}. Aufgrund des Zweierkomplements m\u00fcssen Maschinensprache und Maschine zum gr\u00f6\u00dften Teil nicht zwischen diesen vorzeichenlosen und vorzeichenbehafteten Datentypen unterscheiden.Gleitkommazahlen, die f\u00fcr die Gleitkomma-Arithmetik verwendet werden, verwenden eine andere Interpretation der Bits in einem Wort. Weitere Informationen finden Sie unter Gleitkomma-Arithmetik.Maschinendatentypen m\u00fcssen sein ausgesetzt oder in Systemen oder einfachen Programmiersprachen verf\u00fcgbar gemacht werden, um eine fein abgestimmte Kontrolle \u00fcber die Hardware zu erm\u00f6glichen. Die Programmiersprache C liefert beispielsweise ganzzahlige Typen mit verschiedenen Breiten, wie z short und long. Wenn auf der Zielplattform kein entsprechender nativer Typ vorhanden ist, zerlegt der Compiler diese mithilfe vorhandener Typen in Code. Wenn beispielsweise eine 32-Bit-Ganzzahl auf einer 16-Bit-Plattform angefordert wird, behandelt der Compiler diese stillschweigend als Array von zwei 16-Bit-Ganzzahlen.Bei der \u00fcbergeordneten Programmierung werden Maschinendatentypen h\u00e4ufig ausgeblendet oder abstrahiert als Implementierungsdetail, das Code weniger portierbar macht, wenn er verf\u00fcgbar gemacht wird. Zum Beispiel ein Generikum numeric Typ kann anstelle von Ganzzahlen mit einer bestimmten Bitbreite angegeben werden.Boolescher Typ[edit]Der Boolesche Typ repr\u00e4sentiert die Werte true und false. Obwohl nur zwei Werte m\u00f6glich sind, werden sie aus Effizienzgr\u00fcnden selten als einzelne Bin\u00e4rziffer implementiert. Viele Programmiersprachen haben keinen expliziten Booleschen Typ, sondern interpretieren (zum Beispiel) 0 als falsch und andere Werte als wahr. Boolesche Daten beziehen sich auf die logische Struktur der Interpretation der Sprache in die Maschinensprache. In diesem Fall bezieht sich eine boolesche 0 auf die Logik False. True ist immer eine Nicht-Null, insbesondere eine Eins, die als Boolesche 1 bekannt ist.Aufz\u00e4hlungen[edit]Der Aufz\u00e4hlungstyp hat unterschiedliche Werte, die verglichen und zugewiesen werden k\u00f6nnen, die jedoch nicht unbedingt eine bestimmte konkrete Darstellung im Arbeitsspeicher des Computers haben m\u00fcssen. Compiler und Interpreter k\u00f6nnen sie beliebig darstellen. Beispielsweise k\u00f6nnen die vier Farben in einem Kartenspiel vier Enumeratoren sein VEREIN, DIAMANT, HERZ, SPATEN, geh\u00f6rt zu einem aufgez\u00e4hlten Typ namens passen. Wenn eine Variable V. wird mit erkl\u00e4rt erkl\u00e4rt passen Als Datentyp kann man ihm einen dieser vier Werte zuweisen. Bei einigen Implementierungen k\u00f6nnen Programmierer den Aufz\u00e4hlungswerten ganzzahlige Werte zuweisen oder sie sogar als typ\u00e4quivalent zu ganzen Zahlen behandeln.Numerische Typen[edit]Sowie:Die ganzzahligen Datentypen oder “nicht gebrochenen Zahlen”. Kann entsprechend ihrer F\u00e4higkeit, negative Werte zu enthalten, untergeordnet werden (z unsigned in C und C ++). Kann auch eine kleine Anzahl vordefinierter Untertypen haben (z short und long in C \/ C ++); oder Benutzern erlauben, Unterbereiche wie 1..12 (z. B. Pascal \/ Ada) frei zu definieren.Gleitkomma-Datentypen stellen normalerweise Werte als hochpr\u00e4zise Bruchwerte dar (rationale Zahlen, mathematisch), werden jedoch manchmal irref\u00fchrend als reelle Werte bezeichnet (evokativ f\u00fcr mathematische reelle Zahlen). Sie haben normalerweise vordefinierte Grenzen sowohl f\u00fcr ihre Maximalwerte als auch f\u00fcr ihre Genauigkeit. Wird normalerweise intern im Formular gespeichert a \u00d7 2b (wo ein und b sind ganze Zahlen), werden aber in vertrauter Dezimalform angezeigt.Festpunktdatentypen eignen sich zur Darstellung von Geldwerten. Sie werden h\u00e4ufig intern als Ganzzahlen implementiert, was zu vordefinierten Grenzwerten f\u00fchrt.Bignum- oder numerische Typen mit beliebiger Genauigkeit haben keine vordefinierten Grenzen. Sie sind keine primitiven Typen und werden aus Effizienzgr\u00fcnden sparsam eingesetzt.Zusammengesetzte Typen[edit]Zusammengesetzte Typen werden von mehr als einem primitiven Typ abgeleitet. Dies kann auf verschiedene Arten erfolgen. Die Art und Weise, wie sie kombiniert werden, wird als Datenstruktur bezeichnet. Das Zusammensetzen eines primitiven Typs zu einem zusammengesetzten Typ f\u00fchrt im Allgemeinen zu einem neuen Typ, z Array-of-Integer ist ein anderer Typ als ganze Zahl.Ein Array (auch als Vektor, Liste oder Sequenz bezeichnet) speichert eine Reihe von Elementen und bietet zuf\u00e4lligen Zugriff auf einzelne Elemente. Die Elemente eines Arrays m\u00fcssen normalerweise (aber nicht in allen Kontexten) vom gleichen Typ sein. Arrays k\u00f6nnen fest oder erweiterbar sein. Indizes in einem Array m\u00fcssen normalerweise ganze Zahlen sein (wenn nicht, kann man diese Relaxation betonen, indem man \u00fcber ein assoziatives Array spricht) aus einem bestimmten Bereich (wenn nicht alle Indizes in diesem Bereich Elementen entsprechen, kann es sich um ein sp\u00e4rliches Array handeln).Datensatz (auch Tupel oder Struktur genannt) Datens\u00e4tze geh\u00f6ren zu den einfachsten Datenstrukturen. Ein Datensatz ist ein Wert, der andere Werte enth\u00e4lt, normalerweise in fester Anzahl und Reihenfolge und normalerweise durch Namen indiziert. Die Elemente von Datens\u00e4tzen werden normalerweise aufgerufen Felder oder Mitglieder.Union. Eine Unionstypdefinition gibt an, welcher von mehreren zul\u00e4ssigen primitiven Typen in seinen Instanzen gespeichert werden darf, z. B. “float oder long integer”. Kontrast zu einem Datensatz, der so definiert werden kann, dass er einen Float enth\u00e4lt und eine ganze Zahl; In einer Gewerkschaft ist jeweils nur ein Typ zul\u00e4ssig.Eine markierte Vereinigung (auch als Variante, Variantendatensatz, diskriminierte Vereinigung oder disjunkte Vereinigung bezeichnet) enth\u00e4lt ein zus\u00e4tzliches Feld, das ihren aktuellen Typ angibt, um die Typensicherheit zu verbessern.Ein Satz ist eine abstrakte Datenstruktur, in der bestimmte Werte ohne bestimmte Reihenfolge und ohne wiederholte Werte gespeichert werden k\u00f6nnen. Die Werte selbst werden nicht aus Mengen abgerufen, sondern man testet einen Wert f\u00fcr die Mitgliedschaft, um einen booleschen Wert “in” oder “not in” zu erhalten.Ein Objekt enth\u00e4lt eine Reihe von Datenfeldern, wie z. B. einen Datensatz, sowie eine Reihe von Unterroutinen f\u00fcr den Zugriff oder die \u00c4nderung, die als Methoden bezeichnet werden.Viele andere sind m\u00f6glich, aber sie neigen dazu, weitere Variationen und Verbindungen der oben genannten zu sein. Beispielsweise kann eine verkn\u00fcpfte Liste dieselben Daten wie ein Array speichern, bietet jedoch eher sequentiellen als zuf\u00e4lligen Zugriff und besteht aus Datens\u00e4tzen im dynamischen Speicher. obwohl wohl eher eine Datenstruktur als ein Typ an sichEs ist auch h\u00e4ufig und deutlich genug, dass die Einbeziehung in eine Diskussion \u00fcber zusammengesetzte Typen gerechtfertigt sein kann.Zeichenfolgen- und Texttypen[edit]Sowie:Ein Zeichen, das ein Buchstabe eines Alphabets, eine Ziffer, ein Leerzeichen, ein Interpunktionszeichen usw. sein kann.Eine Zeichenfolge, die eine Folge von Zeichen ist. Zeichenfolgen werden normalerweise zur Darstellung von W\u00f6rtern und Text verwendet, obwohl Text in allen bis auf die trivialsten F\u00e4lle viel mehr als eine Folge von Zeichen umfasst.Zeichen- und Zeichenfolgentypen k\u00f6nnen Zeichenfolgen aus einem Zeichensatz wie ASCII speichern. Da die meisten Zeichens\u00e4tze die Ziffern enthalten, ist es m\u00f6glich, eine numerische Zeichenfolge zu haben, z \"1234\". Viele Sprachen behandeln diese jedoch als zu einem anderen Typ als dem numerischen Wert geh\u00f6rend 1234.Zeichen- und Zeichenfolgentypen k\u00f6nnen je nach erforderlicher Zeichen- “Breite” unterschiedliche Untertypen haben. Das urspr\u00fcngliche 7-Bit-breite ASCII wurde als begrenzt befunden und durch 8- und 16-Bit-S\u00e4tze ersetzt, die eine Vielzahl nicht-lateinischer Alphabete (wie Hebr\u00e4isch und Chinesisch) und andere Symbole codieren k\u00f6nnen. Strings k\u00f6nnen entweder Stretch-to-Fit oder von fester Gr\u00f6\u00dfe sein, selbst in derselben Programmiersprache. Sie k\u00f6nnen auch nach ihrer maximalen Gr\u00f6\u00dfe subtypisiert werden.Hinweis: Zeichenfolgen sind nicht in allen Sprachen ein primitiver Datentyp. In C bestehen sie beispielsweise aus einem Array von Zeichen.Abstrakte Datentypen[edit]Jeder Datentyp, der sich nicht auf die konkrete Darstellung der Daten erstreckt, ist ein abstrakter Datentyp. Stattdessen eine formelle Spezifikation basierend auf den Operationen des Datentyps wird verwendet, um es zu beschreiben. Irgendein Implementierung einer Spezifikation muss die angegebenen Regeln erf\u00fcllen. Abstrakte Datentypen werden in der formalen Semantik und Programmverifizierung und weniger streng im Design verwendet.\u00dcber die \u00dcberpr\u00fcfung hinaus kann eine Spezifikation sofort in eine Implementierung umgewandelt werden. Die OBJ-Familie von Programmiersprachen basiert beispielsweise auf dieser Option, indem Gleichungen zur Spezifikation verwendet und neu geschrieben werden, um sie auszuf\u00fchren. Algebraische Spezifikation[3] war um 1980 ein wichtiges Forschungsgebiet in CS und zu dieser Zeit fast ein Synonym f\u00fcr abstrakte Datentypen. Es hat eine mathematische Grundlage in der universellen Algebra.[4] Die Spezifikationssprache kann ausdrucksvoller gestaltet werden, indem andere Formeln als nur Gleichungen zugelassen werden.Ein typisches Beispiel ist die Hierarchie der Datentypen Liste, Tasche und Satz. Alle diese Datentypen k\u00f6nnen durch drei Operationen deklariert werden: Null, der konstruiert, ist der leere Container, Single, die einen Container aus einem einzelnen Element erstellt und anh\u00e4ngen, die zwei Container des gleichen Typs kombiniert. Die vollst\u00e4ndige Spezifikation f\u00fcr die drei Datentypen kann dann durch die folgenden Regeln f\u00fcr diese Operation angegeben werden:– null ist die linke und rechte neutrale:append (null, A) = A, append (A, null) = A.– F\u00fcr eine Liste ist das Anh\u00e4ngen assoziativ:anh\u00e4ngen (anh\u00e4ngen (A, B), C) = anh\u00e4ngen (A, anh\u00e4ngen (B, C)).– Taschen erh\u00f6hen die Kommutativit\u00e4t:anh\u00e4ngen (B, A) = anh\u00e4ngen (A, B).– Schlie\u00dflich ist ein Set auch idempotent:anh\u00e4ngen (A, A) = A.Der Zugriff auf die Daten kann wahrscheinlich angegeben werden, z. B. a Mitglied Funktion f\u00fcr diese Container durch:– Mitglied (X, einzeln (Y)) = Gleichung (X, Y)– Mitglied (X, null) = falsch– Mitglied (X, Anhang (A, B)) = oder (Mitglied (X, A), Mitglied (X, B))Andere Arten[edit]Typen k\u00f6nnen auf den oben erl\u00e4uterten Grundtypen basieren oder von diesen abgeleitet werden. In einigen Sprachen, wie z. B. C, haben Funktionen einen Typ, der vom Typ ihres R\u00fcckgabewerts abgeleitet ist.Zeiger und Referenzen[edit]Der wichtigste nicht zusammengesetzte, abgeleitete Typ ist der Zeiger, ein Datentyp, dessen Wert direkt auf einen anderen Wert verweist (oder auf diesen zeigt), der unter Verwendung seiner Adresse an anderer Stelle im Computerspeicher gespeichert ist. Es ist eine primitive Art von Referenz. (Im Alltag kann eine Seitenzahl in einem Buch als Datenelement betrachtet werden, das sich auf ein anderes bezieht.) Zeiger werden h\u00e4ufig in einem Format gespeichert, das einer Ganzzahl \u00e4hnelt. Der Versuch, einen Zeiger zu dereferenzieren oder nachzuschlagen, dessen Wert niemals eine g\u00fcltige Speicheradresse war, w\u00fcrde jedoch zum Absturz eines Programms f\u00fchren. Um dieses potenzielle Problem zu beheben, werden Zeiger als separater Typ von dem Datentyp betrachtet, auf den sie verweisen, selbst wenn die zugrunde liegende Darstellung dieselbe ist.Funktionstypen[edit]W\u00e4hrend Funktionen auch einem Typ zugewiesen werden k\u00f6nnen, wird ihr Typ in der Einstellung dieses Artikels nicht als Datentyp betrachtet. Hier werden Daten im Gegensatz zu Algorithmen betrachtet. Bei der Programmierung h\u00e4ngen die Funktionen stark mit den sp\u00e4teren zusammen. Da ein zentrales Motiv der universellen Datenverarbeitung darin besteht, dass Algorithmen als Daten dargestellt werden k\u00f6nnen, z. B. Textbeschreibungen und Bin\u00e4rprogramme, hat der Kontrast von Daten und Funktionen seine Grenzen. Umgekehrt k\u00f6nnen Funktionen auch zum Codieren von Daten verwendet werden. Viele zeitgen\u00f6ssische Typensysteme konzentrieren sich stark auf Funktionstypen, und viele moderne Sprachen interpretieren Funktionen als erstklassige B\u00fcrger.Das konzeptionelle Ausschlie\u00dfen von Funktionen aus dem Thema ist in verwandten Bereichen keine Seltenheit. Die Pr\u00e4dikatenlogik erlaubt es beispielsweise nicht, die Quantifizierer auf Funktionen oder Pr\u00e4dikatnamen anzuwenden.Metatypen[edit]Einige Programmiersprachen stellen die Typinformationen als Daten dar und erm\u00f6glichen so eine Selbstbeobachtung und Reflexion des Typs. Im Gegensatz dazu vermeiden Typsysteme h\u00f6herer Ordnung, die es erm\u00f6glichen, Typen aus anderen Typen zu konstruieren und sie durch Funktionen zu leiten, als w\u00e4ren sie Werte, typischerweise, Rechenentscheidungen auf diese zu st\u00fctzen.Dienstprogrammtypen[edit]Der Einfachheit halber k\u00f6nnen Hochsprachen beispielsweise vorgefertigte “reale” Datentypen bereitstellen mal, Termine und Geldwerte und Erinnerung, selbst wenn die Sprache es erlaubt, sie aus primitiven Typen aufzubauen.Typ Systeme[edit]Ein Typsystem ordnet Typen berechneten Werten zu. Durch die Untersuchung des Flusses dieser Werte versucht ein Typsystem zu beweisen, dass nein Tippfehler kann auftreten. Das fragliche Typsystem bestimmt, was einen Typfehler darstellt, aber ein Typsystem versucht im Allgemeinen sicherzustellen, dass Operationen, die einen bestimmten Wert erwarten, nicht mit Werten verwendet werden, f\u00fcr die diese Operation keinen Sinn ergibt.Ein Compiler kann den statischen Typ eines Werts verwenden, um den ben\u00f6tigten Speicher und die Auswahl von Algorithmen f\u00fcr Operationen an dem Wert zu optimieren. In vielen C-Compilern ist die float Der Datentyp wird beispielsweise gem\u00e4\u00df der IEEE-Spezifikation f\u00fcr Gleitkommazahlen mit einfacher Genauigkeit in 32 Bit dargestellt. Sie verwenden daher Gleitkommaspezifische Mikroprozessoroperationen f\u00fcr diese Werte (Gleitkommaaddition, Multiplikation usw.).Die Tiefe der Typbeschr\u00e4nkungen und die Art ihrer Bewertung beeinflussen die Tippen der Sprache. Eine Programmiersprache kann eine Operation ferner mit unterschiedlichen konkreten Algorithmen f\u00fcr jeden Typ im Fall eines Typpolymorphismus verkn\u00fcpfen. Die Typentheorie ist das Studium von Typsystemen, obwohl die konkreten Typensysteme von Programmiersprachen aus praktischen Fragen der Computerarchitektur, der Compilerimplementierung und des Sprachdesigns stammen.Typsysteme k\u00f6nnen unterschiedlich statisch oder dynamisch sein, stark oder schwach typisieren und so weiter.Siehe auch[edit]Verweise[edit]Weiterf\u00fchrende Literatur[edit]Externe Links[edit]"},{"@context":"http:\/\/schema.org\/","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https:\/\/wiki.edu.vn\/wiki6\/#breadcrumbitem","name":"Enzyklop\u00e4die"}},{"@type":"ListItem","position":2,"item":{"@id":"https:\/\/wiki.edu.vn\/wiki6\/2020\/12\/01\/datentyp-wikipedia\/#breadcrumbitem","name":"Datentyp – Wikipedia"}}]}]