it-swarm.com.de

Warum sind 80 Zeichen die Standardgrenze für die Codebreite?

Warum sind 80 Zeichen die "Standard" -Grenze für die Codebreite? Warum 80 und nicht 79, 81 oder 100? Was ist der Ursprung dieses bestimmten Wertes?

592
fredley

Sie können der IBM Lochkarte für dieses Limit danken - es hatte 80 Spalten:

IBM punch card

748
Oded

Wie oded erwähnt, ist dieser gemeinsame Codierungsstandard ein Ergebnis des IBM-Lochkartenformats von 1928 80-Spalten-Lochkartenformat , da viele Codierungsstandards auf eine Zeit zurückgehen, als Programme auf Punch geschrieben wurden Karten, eine Karte/Zeile nach der anderen, und selbst der Übergang zu breiteren Bildschirmen änderte nichts an der Tatsache, dass Code mit zunehmender Breite schwieriger zu lesen ist.

Von der Wikipedia-Seite auf Lochkarte s:

Kulturelle Auswirkungen

  • Ein Erbe des Lochkartenformats mit 80 Spalten ist, dass eine Anzeige von 80 Zeichen pro Zeile eine häufige Wahl bei der Gestaltung zeichenbasierter Terminals war. Ab November 2011 bleiben einige Standardeinstellungen für die Zeichenschnittstelle, z. B. die Breite des Eingabeaufforderungsfensters in Microsoft Windows, auf 80 Spalten festgelegt, und einige Dateiformate wie FITS verwenden weiterhin Kartenbilder mit 80 Zeichen.

Nun stellt sich die Frage, warum IBM 1928 80 Spaltenkarten ausgewählt hat, als Herman Hollerith zuvor 24 und 45 Spaltenkarten verwendet hatte.

Obwohl ich keine endgültige Antwort finden kann, vermute ich, dass die Auswahl auf der typischen Anzahl von Zeichen pro Zeile der damaligen Schreibmaschinen beruhte.

Die meisten historische Schreibmaschinen , die ich gesehen habe, hatten eine Druckplatte Breite von ungefähr 9 Zoll, was der Standardisierung von Papierformaten auf ungefähr 8 "-8,5" Breite entspricht (siehe Warum ist das Standardpapierformat in den USA 8 ½ "x 11"? und die Geschichte von ISO216 A Serie Papierstandard ).

Wenn Sie einen typischen Schreibmaschinenabstand von 10 bis 12 Zeichen pro Zoll hinzufügen, führt dies je nach Größe der Ränder zu Dokumenten mit einer Breite zwischen 72 und 90 Zeichen.

Als solches hätten 80 Zeichen pro Zeile einen guten Kompromiss zwischen Lochabstand (kleine rechteckige gegenüber größeren runden Löchern) und Zeilenlänge bei gleicher Kartengröße dargestellt.


Übrigens gibt nicht überall in ihren Codierungsstandards eine Zeilenbreite von 80 Zeichen an. Wo ich arbeite, gibt es eine Beschränkung von 132 Zeichen, die der Breite typischer breiter Zeilendrucker früherer 12pt-Landschaften entspricht Der A4-Ausdruck und die typische Linienbreite, die in einem Editorfenster von Eclipse (maximiert auf einem 1920 x 1200-Bildschirm) verbleibt, nachdem die Ansichten des Paket-Explorers und der Gliederung berücksichtigt wurden.

Trotzdem bevorzuge ich immer noch 80 Zeichen breiten Code, da es einfacher ist, drei Revisionen einer Datei nebeneinander zu vergleichen, ohne entweder seitwärts zu scrollen (immer schlecht) oder Zeilen zu umbrechen (was die Codeformatierung zerstört). Mit 80 Zeichen breitem Code benötigen Sie nur einen 240 Zeichen breiten Bildschirm (1920 Pixel bei 8 Pixel pro Zeichen), um eine vollständige Drei-Wege-Zusammenführung (gemeinsamer Vorfahr, lokaler Zweig und entfernter Zweig) bequem zu sehen auf einem Bildschirm.

258
Mark Booth

Ich würde sagen, das liegt auch daran, dass alte Terminals (meistens) 80x24 Zeichen groß waren: In den Tagen von 80x24 Terminals ...

BEARBEITEN:

Um die Frage genauer und gründlicher zu beantworten, sind 80 Zeichen die derzeit "allgemein akzeptierte" Grenze für die Codebreite in Editoren, da die Formate 80x24 und 80x25 die häufigsten Bildschirmmodi in frühen E/A-Terminals und PCs waren ( VT52 - danke an Sandman4).

Diese Begrenzung ist IMHO aus zwei Hauptgründen immer noch gültig und irgendwie wichtig: Die Standardgeometrie, die viele Linux-Distributionen neu erstellten Terminalfenstern zuweisen, ist immer noch 80x24 und wird von vielen Benutzern unverändert verwendet , ohne Größenänderung. Darüber hinaus arbeiten Kernel-, Echtzeit- und eingebettete Programmierer häufig in einer "kopflosen" Umgebung ohne Fenstermanager. Auch hier beträgt die Standardbildschirmauflösung häufig 80 x 24 (oder 80 x 25), und in diesen Situationen kann es sogar schwierig sein, diese Standardeinstellung zu ändern.

Wenn Sie also ein Kernel-, Echtzeit- oder Embedded-Programmierer sind, sollten Sie sich zwingen, diese Grenze einzuhalten, um jedem Programmierer, der Ihren Code lesen sollte, ein wenig "freundlicher" zu sein.

63
Avio

Obwohl dies wahrscheinlich nicht der ursprüngliche Grund für die Beschränkung auf 80 Zeichen ist, ist ein Grund dafür, dass es weithin akzeptiert wurde, einfach das Lesen der Ergonomie :

  • Wenn die Zeilen zu kurz sind, ist der Text schwer zu lesen, da Sie beim Lesen ständig von einer Zeile zur nächsten springen müssen.
  • Wenn die Linien zu lang sind, wird das Linienspringen zu schwierig, weil Sie "die Linie verlieren", während Sie zum Anfang der nächsten Linie zurückkehren (dies kann durch einen größeren Abstand zwischen den Linien verringert werden, dies verschwendet jedoch auch Platz).

Dies ist in der Typografie weithin bekannt und anerkannt. Die Standardempfehlung (für Text in Büchern usw.) besteht darin, etwas im Bereich von 40-90 Zeichen pro Zeile und idealerweise ungefähr 60 (siehe zB Wikipedia , Markus Itkonen: Typografie und Lesbarkeit ).

Wenn Sie 60 Zeichen pro Zeile anstreben, muss Ihre Obergrenze offensichtlich etwas höher sein, um gelegentlich langen Ausdrücken (und Dingen wie Randmarkierungen und Zeilennummern) Rechnung zu tragen. Daher ist eine Obergrenze von 70-80 sinnvoll.

Dies erklärt wahrscheinlich, warum die Beschränkung auf 80 Zeichen von vielen anderen Systemen übernommen wurde.

55
sleske

Eine verwandte Frage lautet "Warum sind 80 Spalten erhalten geblieben?". Sogar die Antworten auf dieser Seite sind ungefähr so ​​breit. Ich stimme den historischen Gründen für 80 Spalten zu, aber die Frage ist, warum der Standard fortbestanden hat. Ich würde Lesbarkeit beanspruchen - für Prosa und Code. Unser Verstand kann nur so viele Informationen in einem Stück aufnehmen. Ich verwende immer noch die 80-Spalten-Markierung in meinem Code-Editor, um mich daran zu erinnern, wenn eine Anweisung zu lang und undurchsichtig wird. Es lässt mir auch viel Platz auf dem Bildschirm für den Browser und die unterstützenden Fenster IDE. Es lebe die 80-Spalte - in der Regel keine Regel.

28
Paul Marrington

Eine andere übliche Zeilenlängenbeschränkung in den Tagen von Schriften mit fester Tonhöhe betrug 72 Zeichen. Beispiele: Fortran-Code, Mail, Nachrichten.

Ein Grund war, dass die Spalten 73-80 einer Lochkarte häufig für eine Seriennummer reserviert waren. Warum eine Seriennummer? Wenn Sie ein Kartenspiel fallen lassen, können Sie die Karten in beliebiger Reihenfolge aufheben, die oberen linken Ecken (die immer einen diagonalen Schnitt hatten) ausrichten und sie mit einer Kartensortiermaschine wieder in Ordnung bringen.

Ein weiterer Grund für die Beschränkung auf 72 Zeichen war, dass gängige Schriftarten 10 Punkte hoch und 6 Punkte (1/12 ") breit waren. Eine A4- oder 8,5" breite Seite konnte 72 Zeichen in einer 6 "breiten Spalte enthalten und bietet dennoch Platz für Ränder von über einem Zoll.

12
Larry Tesler

Ich persönlich halte mich für mein Zeilenende an "ungefähr Spalte 80", da darüber hinaus beim Drucken ein Zeilenumbruch oder Codeverlust auftritt.

Es gibt auch Vermächtnis von Lochkarten, aber ich glaube nicht, dass Laserdrucker oder 8,5 x 11 Zoll Papier so eingestellt wurden, dass sie den Einschränkungen für Lochkarten entsprechen.

7
CMike

Scroll in Druckerpapieren waren Buchstabengröße oder 15 "breit.

Es waren die 80-cps-Zeilendrucker zum Hardkopieren von Codes oder Berichten, und später unterstützt Epson das komprimierte Drucken mit 132 cps (Escape-Code\015 für komprimiertes Drucken).

4
Rony

Einer der Gründe für die 80-Säulen-Karten kann mit dem "Handstempel" zusammenhängen, der wahrscheinlich vor den elektronischen Kartenstanzmaschinen verwendet wurde. Es ist eines, das ich in den frühen 70ern auf einer ICL System 4-50 Mainframe-Computer-Site verwendet habe. Man musste einen Dreierabschnitt schlagen? Stanzen Sie gleichzeitig Messer in den Wagen.

1
Ray Denton