Zum Inhalt springen

Datenwort

aus Wikipedia, der freien Enzyklopädie

Vorlage:Hinweisbaustein Vorlage:Hinweisbaustein Ein Datenwort oder einfach nur Wort ist eine bestimmte Datenmenge, die ein Computer in der arithmetisch-logischen Einheit des Prozessors in einem Schritt verarbeiten kann. Ist eine maximale Datenmenge gemeint, so wird deren Größe Wortbreite, Verarbeitungsbreite<ref>http://www.wissen.de/lexikon/verarbeitungsbreite</ref> oder Busbreite genannt.

In Programmiersprachen ist das Datenwort dagegen eine plattformunabhängige Dateneinheit oder die Bezeichnung für einen Datentyp und entspricht in der Regel 16 Bit<ref>QuinnRadich: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Abgerufen am 15. Januar 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> oder 32 Bit<ref>Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.</ref> (siehe Beispiele).

Das Zweifache eines Wortes – im jeweiligen Kontext – wird als Doppelwort (englisch Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., kurz DWord) oder Langwort bezeichnet. Für das Vierfache eines Wortes gibt es im Englischen außerdem noch die Bezeichnung quadruple word, kurz Quadword oder QWord. Die Dateneinheit mit der halben Wortbreite wird entsprechend als Halbwort bezeichnet.

Maximal adressierbarer Speicher[Bearbeiten]

Je nach System kann die Wortbreite beträchtlich differieren, wobei die Varianten in bisher produzierten Rechnern, ausgehend von 4 Bit, nahezu durchwegs einer Zweierpotenz folgen, also einer jeweiligen Verdoppelung der Wortbreite. (Ausnahmen hiervon waren z. B. die Großrechner TR 4 und TR 440 aus den 1960er/1970er Jahren mit 50 bzw. 52 Bit breiten Wörtern.)

Neben der größtmöglichen Zahl, die in einem Rechenschritt verarbeitet werden kann, bestimmt die Wortbreite vor allem die Größe des maximal direkt adressierbaren Speichers. Deshalb ist eine Tendenz zu größeren Wortlängen erkennbar:

  • Die ersten Prozessoren (Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., kurz: CPU) hatten nur 4-Bit-Datenwörter (Nibbles). Mit 4 Bit kann man 16 Zustände abbilden, dies genügt für die Darstellung der zehn Ziffern 0 bis 9. Viele Digitaluhren und einfache Taschenrechner haben heute noch 4-Bit-Prozessoren.
  • In den 1970er Jahren etablierten sich 8-Bit-Prozessoren, die bis ca. 1990 den Markt für Heimanwender beherrschten. Mit 8 Bit konnte man nun 256 verschiedene Zeichen in einem Datenwort speichern. Die Computer nutzten nun alphanumerische Ein- und Ausgaben, die viel leserlicher waren und neue Möglichkeiten eröffneten. Die daraus entstandenen 8-Bit-Zeichensätze, z. B. EBCDIC oder die verschiedenen 8-Bit-Erweiterungen des 7-Bit-ASCII-Codes, haben sich zum Teil bis ins 32-Bit-Zeitalter erhalten, und einfache Textdateien liegen auch heute noch oft in einem 8-Bit-Format vor.
  • Seitdem ist die Wortbreite innerhalb der x86-Prozessor-Familie mehrfach verdoppelt worden:

Abweichende Bedeutungen[Bearbeiten]

In Programmiersprachen für x86-Systeme ist die Größe eines Wortes, teils aus Gewohnheit, vor allem aber, um Kompatibilität mit vorhergehenden Prozessoren zu erhalten, nicht mitgewachsen, sondern bezeichnet heute umgangssprachlich eine Bitfolge von 16 Bit, also den Stand des 8086-Prozessors.

Für spätere x86-Prozessoren wurden die Bezeichnungen Doppelwort/DWORD (englisch double word, auch Langwort/Long) und QWORD (englisch quad word) eingeführt. Beim Wechsel von 32-Bit-Architekturen und -Betriebssystemen auf 64 Bit hat sich die Bedeutung von Long getrennt:

In anderen Rechnerarchitekturen (z. B. PowerPC, Sparc) ist mit einem Wort oft eine Bitfolge von 32 Bit gemeint (der ursprünglichen Wortbreite dieser Architekturen), weshalb dort die Bezeichnung Halbwort für Folgen von 16 Bit gebräuchlich ist.

Beispiele[Bearbeiten]

Prozessoren der x86-Architektur[Bearbeiten]

Datenbreite Datentyp Prozessorregister
4 Bit = ½ Byte Nibble keine eigenen Register
8 Bit = 1 Byte Byte z. B. die Register AL und AH
16 Bit = 2 Byte Word z. B. das Register AX
32 Bit = 4 Byte Double Word z. B. das Register EAX
64 Bit = 8 Byte Quadruple Word z. B. das Register MM0
128 Bit = 16 Byte Double Quadruple Word z. B. das Register XMM0

Der Begriff Word (bzw. Wort) wird auch in der Windows-API für eine 16-Bit-Zahl verwendet.<ref>Vorlage:Cite book/NameVorlage:Cite book/Name: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] , archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 19. Dezember 2010.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>
Früher hieß ein Double Quadruple Word u. a. bei Turbo Pascal auch ein Paragraph.

SPS[Bearbeiten]

Bei der Programmierung von speicherprogrammierbaren Steuerungen (SPS) legt die Norm IEC 61131-3 die Wortgrößen wie folgt fest:

Datenbreite Bit-Datentypen Integer-Datentypen Wertebereich
vorzeichenlos vorzeichenbehaftet
8 Bit = 1 Byte BYTE (Byte) (U)SINT (Short-Integer) 0…255 −128…127
16 Bit = 2 Byte WORD (Wort) (U)INT (Integer) 0…65 535 −32 768…32 767
32 Bit = 4 Byte DWORD (Doppel-Wort) (U)DINT (Double Integer) 0…232-1 -231…231-1
64 Bit = 8 Byte LWORD (Lang-Wort) (U)LINT (Long Integer) 0…264-1 -263…263-1

Wird der Buchstabe U vor einen Integer-Datentypen gestellt (z. B. UDINT), so bedeutet dies „unsigned“ (vorzeichenlos), ohne U sind die Integerwerte vorzeichenbehaftet.

Einzelnachweise[Bearbeiten]

<references />

<templatestyles src="Erweiterte Navigationsleiste/styles legacy.css" />Vorlage:Klappleiste/Anfang

nach Wortbreite

1-Bit-Architektur • Bit-Slice-Architektur • 4-Bit-Architektur • 8-Bit-Architektur • 16-Bit-Architektur • 32-Bit-Architektur • 64-Bit-Architektur

nach Befehlssatzaufbau

CISC • EPIC • NISC • RISC • VLIW • Mikroarchitektur

mit Optimierung für Einsatzzweck

(Haupt-)Prozessor • Hardwarebeschleunigung • Grafikprozessor • GPGPU • Streamprozessor • Soundprozessor • Gleitkommaeinheit • Netzwerkprozessor • Physikbeschleuniger • Vektorprozessor • Tensor Processing Unit

Vorlage:Klappleiste/Ende