Ich unterrichte den Kurs "Einführung in die Programmierung" für Studienanfänger und möchte interessante Beispiele finden, bei denen die vom Design gewählte Datentypgröße in Bit zu bestimmten bekannten Einschränkungen oder wichtigen Werten führte.
Hier sind einige Beispiele:
- Aufgrund der Tatsache, dass der Bell-Teleprinter bisher 7-Bit-Code (später als ASCII akzeptiert) verwendet hat, müssen Anhänge in elektronischen Nachrichten häufig so codiert werden, dass sie nur 7-Bit-Daten enthalten.
- Die klassische Beschränkung des 32-Bit-Adressraums führt zu einer maximalen RAM-Größe von 4 GB für 32-Bit-Systeme und einer maximalen Dateigröße von 4 GB in FAT32.
Kennen Sie einige andere interessante Beispiele, wie die Wahl des Datentyps (und insbesondere seiner binären Länge) die moderne IT-Welt beeinflusst hat?
Nach einigen Diskussionen in den Kommentaren hinzugefügt:
Ich werde nicht lehren, wie man Einschränkungen überwindet. Ich möchte nur, dass sie wissen, dass 1 Byte die Werte von -127..0 .. + 127 o 0..255 enthalten kann, 2 Bytes den Bereich 0..65535 usw. abdecken, indem sie Beispiele beweisen, die sie aus anderen Quellen kennen, wie z oben erwähnte Base64-Codierung usw. Wir lernen gerade die grundlegenden Datentypen und ich versuche, eine gute Referenz dafür zu finden, wie groß diese Typen sind.
quelle
Antworten:
IPv4 ist ein sehr gutes Beispiel, bei dem eine begrenzte Spezifikationsgröße ein sehr teures Problem auf der ganzen Linie verursachte. 4,3 Milliarden Adressen reichen einfach nicht mehr aus. Jetzt führen ISPs auf der ganzen Welt IPv6 verzweifelt mit einem 128-Bit-Adressraum ein, der sich in eine Adresse für jedes Atom in Ihrem Körper oder ähnliches umwandelt.
quelle
Das Problem des Jahres 2000 war ähnlich, außer dass die Leute Dezimalzahlen anstelle von Binärzahlen verwendeten und nur zwei letzte Ziffern codierten. Dies kann ein nützliches Beispiel sein, wenn Sie jemandem erklären, der wenig Erfahrung mit Binärdateien hat.
FAT12 / FAT16 / FAT32 wurden angepasst, um eine immer größere Lagerung zu gewährleisten.
TeX hat einige interessante Eigenschaften bei der Darstellung von Dimensionen (aus dem TeXBook):
(pt ist eine typografische Einheit, die ungefähr 1/72 Zoll entspricht)
quelle
Microsoft Excel - Versuchen Sie, mehr als 32.000 Elemente grafisch darzustellen. Irgendwo muss ein signiertes 16-Bit-Feld sein. (obwohl sie das Limit auch aus irgendeinem Grund auf 32000 abrunden).
quelle