<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=LHa_%28Kompressionsprogramm%29</id>
	<title>LHa (Kompressionsprogramm) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=LHa_%28Kompressionsprogramm%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=LHa_(Kompressionsprogramm)&amp;action=history"/>
	<updated>2026-06-04T00:52:47Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=LHa_(Kompressionsprogramm)&amp;diff=314794&amp;oldid=prev</id>
		<title>imported&gt;InternetArchiveBot: InternetArchiveBot hat 1 Archivlink(s) ergänzt und 0 Link(s) als defekt/tot markiert.) #IABot (v2.0.9.5</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=LHa_(Kompressionsprogramm)&amp;diff=314794&amp;oldid=prev"/>
		<updated>2026-02-11T06:08:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Benutzer:InternetArchiveBot&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:InternetArchiveBot (Seite nicht vorhanden)&quot;&gt;InternetArchiveBot&lt;/a&gt; hat 1 Archivlink(s) ergänzt und 0 Link(s) als defekt/tot markiert.) #IABot (v2.0.9.5&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Software&lt;br /&gt;
| Name = LHa&lt;br /&gt;
| Logo = &lt;br /&gt;
| Screenshot = [[Datei:LHarc usage message.jpg|240px|Screenshot]]&lt;br /&gt;
| Beschreibung = Hilfeanzeige von LHarc in der Kommandozeile&lt;br /&gt;
| Maintainer = „LHa for UNIX“: Koji Arai&lt;br /&gt;
| Hersteller = Haruyasu Yoshizaki et al.&amp;lt;ref&amp;gt;{{Webarchiv|url=https://lha.osdn.jp/history.html |wayback=20211203195906 |text=Archivierte Kopie |archiv-bot=2026-02-11 06:08:38 InternetArchiveBot }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
| Management = &lt;br /&gt;
| AktuelleVersion = „LHa for UNIX“: 1.14i-ac20220213&lt;br /&gt;
| Betriebssystem = [[plattformübergreifend]] verfügbar&lt;br /&gt;
| Programmiersprache = [[C (Programmiersprache)|C]]&lt;br /&gt;
| Kategorie = [[Datenkompression]]&lt;br /&gt;
| Lizenz = Versions- und implementierungsabhängig. Die Implementierung „LHa for UNIX“ ist quelloffen.&lt;br /&gt;
| Deutsch = &lt;br /&gt;
| Website = [https://github.com/jca02266/lha github.com/jca02266/lha]&lt;br /&gt;
}}&lt;br /&gt;
{{Infobox Dateiformat&lt;br /&gt;
| Name = LZH&lt;br /&gt;
| Icon =&lt;br /&gt;
| Logo =&lt;br /&gt;
| Screenshot = &lt;br /&gt;
| Beschreibung =&lt;br /&gt;
| Dateiendung = .lzh, .lha&lt;br /&gt;
| MIME = application/x-lzh-compressed&lt;br /&gt;
| MIME-Anm = &lt;br /&gt;
| MagischeZahl =&lt;br /&gt;
| MagischeZahlNotation =&lt;br /&gt;
| MagischeZahlHex =&lt;br /&gt;
| Entwickler = &lt;br /&gt;
| Veröffentlicht =&lt;br /&gt;
| LetzteVersion = &lt;br /&gt;
| LetzteVersionDatum = &lt;br /&gt;
| Art = [[Datenkompression]]&lt;br /&gt;
| Container für = beliebige [[Datei]]en&lt;br /&gt;
| Enthalten in =&lt;br /&gt;
| Erweitert von =&lt;br /&gt;
| Erweitert zu =&lt;br /&gt;
| Standard =&lt;br /&gt;
| Website = &lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;LHa&amp;#039;&amp;#039;&amp;#039; bezeichnet eine [[Datenkompression|Kompressionsprogramm]]familie zur Dateiarchivierung. Das zugehörige [[Dateiformat]] &amp;#039;&amp;#039;&amp;#039;LZH&amp;#039;&amp;#039;&amp;#039; basiert auf dem LZHUFF-Verfahren, bei dem zuerst mit dem [[Lempel-Ziv-Storer-Szymanski-Algorithmus]] (LZSS) sich wiederholende Abschnitte eines Datenstroms dedupliziert und im zweiten Schritt mit einer [[Entropiekodierung]] nach [[Huffman-Kodierung|Huffman]] noch stärker komprimiert werden. Aus den LHa-[[Quelltext]]en wurde der weit verbreitete [[Deflate]]-Algorithmus abgeleitet.&lt;br /&gt;
&lt;br /&gt;
== Dateiformat LZH und Algorithmus LZHUFF ==&lt;br /&gt;
=== Geschichte ===&lt;br /&gt;
Das Format LZH wurde 1988 vom Mediziner Haruyasu Yoshizaki ({{lang|ja|吉崎 栄泰}}, &amp;#039;&amp;#039;Yoshizaki Haruyasu&amp;#039;&amp;#039;) mit Unterstützung von Professor Haruhiko Okumura ({{lang|ja|奥村 晴彦}}) von der Universität Matsusaka (heute: [[Mie-Chūkyō-Universität]]) für sein Kompressionsprogramm &amp;#039;&amp;#039;&amp;#039;LHarc&amp;#039;&amp;#039;&amp;#039; entworfen.&lt;br /&gt;
&lt;br /&gt;
=== Dateinamenerweiterungen und MIME-Type ===&lt;br /&gt;
Neben der plattformübergreifenden [[Dateinamenserweiterung|Dateinamenerweiterung]] &amp;lt;code&amp;gt;.lzh&amp;lt;/code&amp;gt; wird auf dem [[Amiga]] von [[Commodore International|Commodore]] die Erweiterung &amp;lt;code&amp;gt;.lha&amp;lt;/code&amp;gt; verwendet sowie historisch auch &amp;lt;code&amp;gt;.pma&amp;lt;/code&amp;gt; (PMarc) und &amp;lt;code&amp;gt;.lzs&amp;lt;/code&amp;gt; (LArc). Der&lt;br /&gt;
[[Internet Media Type|MIME-Type]] ist &amp;lt;code&amp;gt;application/x-lzh-compressed&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Byte-Reihenfolge ===&lt;br /&gt;
Die Byte-Reihenfolge des LZH-Formats ist [[little-endian]].&lt;br /&gt;
&lt;br /&gt;
=== Headerformat ===&lt;br /&gt;
In LZH-Archiven ist jeder darin befindlichen Datei ein Header vorangestellt, der Informationen zur jeweiligen Datei enthält. Das LZH-Format kann drei Arten von Headern enthalten, und zwar Header nach level-0, level-1 oder level-2. In den folgenden zwei Tabellen ist die interne Struktur des LZH-Formats schematisch dargestellt.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ level-0&lt;br /&gt;
| LZH-Header&lt;br /&gt;
|-&lt;br /&gt;
| Komprimierte Daten&lt;br /&gt;
|-&lt;br /&gt;
| LZH-Header&lt;br /&gt;
|-&lt;br /&gt;
| Komprimierte Daten&lt;br /&gt;
|-&lt;br /&gt;
| …&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ level-1, level-2&lt;br /&gt;
| LZH-Header&lt;br /&gt;
|-&lt;br /&gt;
| Erweiterungsheader&lt;br /&gt;
|-&lt;br /&gt;
| Erweiterungsheader&lt;br /&gt;
|-&lt;br /&gt;
| …&lt;br /&gt;
|-&lt;br /&gt;
| Komprimierte Daten&lt;br /&gt;
|-&lt;br /&gt;
| LZH-Header&lt;br /&gt;
|-&lt;br /&gt;
| Erweiterungsheader&lt;br /&gt;
|-&lt;br /&gt;
| Erweiterungsheader&lt;br /&gt;
|-&lt;br /&gt;
| …&lt;br /&gt;
|-&lt;br /&gt;
| Komprimierte Daten&lt;br /&gt;
|-&lt;br /&gt;
| …&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Kompressionsmethoden ===&lt;br /&gt;
Die LH-Verfahren nutzen ein [[Wörterbuchkompression|Stringersatzverfahren]] basierend auf dem Lempel-Ziv-Storer-Szymanski-Algorithmus (LZSS) und eine [[Entropiekodierung]] nach [[Huffman-Kodierung|Huffman]].&lt;br /&gt;
&lt;br /&gt;
Das Dateiformat lässt die Nutzung verschiedener Packmethoden zu, normalerweise verschiedene Versionen des LH-Algorithmus mit Unterschieden in der&lt;br /&gt;
* Fensterlänge (bis zu 4k bei LArc, bis zu 64k bei LHa),&lt;br /&gt;
* maximalen Wortlänge (LArc: 17, LHa: 60, 256),&lt;br /&gt;
* der Höhe des Grenzwertes des LZSS-Algorithmus (2, 3) und&lt;br /&gt;
* statischem oder dynamischem Huffman:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ [[Kanonisch]]es LZH&lt;br /&gt;
! !! &amp;lt;code&amp;gt;-lh0-&amp;lt;/code&amp;gt; !! &amp;lt;code&amp;gt;-lh1-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh2-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh3-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh4-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh5-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh6-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lh7-&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;-lhd-&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | Schiebewörterbuchlänge&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; | unkomprimiert || 4 KiB || 8 KiB || 8 KiB || 4 KiB || 8 KiB || 32 KiB || 64 KiB || rowspan=&amp;quot;3&amp;quot; | leere Ordner&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | max. Wortlänge&lt;br /&gt;
| 60 bytes || 256 bytes || 256 bytes || 256 bytes || 256 bytes || 256 bytes || 256 bytes&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | Huffman&lt;br /&gt;
| dynamisch || dynamisch || statisch || statisch || statisch || statisch || statisch&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Historische und nicht-kanonische Methoden:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
LArc-Methoden: &amp;lt;code&amp;gt;-lzs-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz2-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz3-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz4-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz5-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz7-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lz8-&amp;lt;/code&amp;gt;;&amp;lt;br&amp;gt;&lt;br /&gt;
LHa Joe Jared extensions: &amp;lt;code&amp;gt;-lh8-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lh9-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lha-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lhb-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lhc-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-lhe-&amp;lt;/code&amp;gt;;&lt;br /&gt;
&amp;lt;code&amp;gt;-lhx-&amp;lt;/code&amp;gt;;&amp;lt;br&amp;gt;&lt;br /&gt;
PMarc-Methoden: &amp;lt;code&amp;gt;-pm0-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-pm1-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-pm2-&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;-pms-&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Implementierungen von LHa ==&lt;br /&gt;
Ausgangspunkt war das Packprogramm LArc eines anderen Autors.&lt;br /&gt;
Ursprünglich hieß das Programm &amp;#039;&amp;#039;&amp;#039;LHarc&amp;#039;&amp;#039;&amp;#039;. Eine komplett neugeschriebene Version wurde vorläufig &amp;#039;&amp;#039;LHx&amp;#039;&amp;#039; genannt und letztendlich als &amp;#039;&amp;#039;LH&amp;#039;&amp;#039; veröffentlicht. Um nicht mit dem damals neuen gleichnamigen Befehl „load high“ von [[MS-DOS]] 5.0 in Konflikt zu geraten, wurde es in &amp;#039;&amp;#039;LHa&amp;#039;&amp;#039; umbenannt.&lt;br /&gt;
&lt;br /&gt;
=== Verwendung und Verbreitung ===&lt;br /&gt;
Erste größere Popularität erlangte nicht LHarc selbst, sondern eine in Mailboxnetzen um 1989 verbreitete, manipulierte Version namens LHice beziehungsweise ICE mit der Versionsnummer 1.14. Sie war praktisch identisch mit LHarc, aber die Endung der erzeugten Files lautete „.ice“, und in der Fortschrittsanzeige wurde „{{lang|en|freezing}}“ bzw. „{{lang|en|melting}}“ statt „{{lang|en|packing}}“ bzw. „{{lang|en|unpacking}}“ ausgegeben.&lt;br /&gt;
In der bald darauf folgenden Version LHarc 2.0 wurden derartige Manipulationen durch eine Verschlüsselung der programminternen Textstrings erschwert. Trotzdem tauchte auch von LHarc 2.0 eine gehackte Version auf, die sich „FOOBAR“ („Florian Orjanov’s and Olga Bachetzka’s ARchiver“) nannte und Archive mit der Dateiendung „.foo“ erzeugte.&lt;br /&gt;
&lt;br /&gt;
Das Format wurde von [[id Software]] benutzt, um die Installationsdateien ihrer frühen Computerspiele zu komprimieren, beispielsweise [[Doom (1993)|Doom]]. &amp;#039;&amp;#039;LHa&amp;#039;&amp;#039; wurde in viele Betriebssystemumgebungen [[Portierung (Software)|portiert]] und ist auf dem [[Amiga]] das meistbenutzte Archivformat, insbesondere im [[Aminet]].&lt;br /&gt;
&lt;br /&gt;
Der LZH-Algorithmus wurde von Firmen wie [[American Megatrends|AMI]] für ihr [[BIOS]] verwendet, um den begrenzten Platz der Speicherbausteine auf der [[Hauptplatine]] im Computer effizient auszunutzen.&amp;lt;ref&amp;gt;{{cite journal |author=Andreas Stiller |title=Prozessor-Patches |publisher=[[Heinz Heise (Verleger)|Heinz Heise]] |journal=[[c’t]] |year=2001 |issue=5 |pages=240–241 |url=https://shop.heise.de/katalog/prozessor-patches |accessdate=2016-07-17 |archivebot=2022-11-29 12:46:22 InternetArchiveBot |archiveurl=https://web.archive.org/web/20151122084533/https://shop.heise.de/katalog/prozessor-patches |archivedate=2015-11-22 |offline=yes }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das LZH-Format wird heute zwar in Europa und den USA kaum noch verwendet, ist aber nach wie vor in [[Japan]] sehr beliebt. Die Firma [[Microsoft]] hat für ihr Betriebssystem [[Microsoft Windows XP|Windows XP]] in Japan eine Erweiterung für komprimierte Ordner im LZH-Format herausgebracht.&amp;lt;ref&amp;gt;[http://support.microsoft.com/kb/896132/JA/ support.microsoft.com]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Y2K11-Bug ===&lt;br /&gt;
[[Zeitstempel]] seit dem Jahr 2011 werden auf 1980 gesetzt. Dieser Fehler erfordert ein Update des Packprogramms.&amp;lt;ref&amp;gt;[http://aminet.net/package/util/arc/fix1980 aminet.net] für die Vergangenheit&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://aminet.net/package/util/arc/lha_68k aminet.net] für die Zukunft&amp;lt;/ref&amp;gt; Es wurde in [[Assemblersprache]] der [[Arithmetischer Überlauf|Überlauftest]] &amp;lt;code&amp;gt;cmpi.l #2010,d6&amp;lt;/code&amp;gt; benutzt, offensichtlich ein [[Zahlendreher]] zu 2100.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Liste von Datenkompressionsprogrammen]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://lha.a1k.org/ Downloads] – LHa 2.15 für Amiga-Computer (englisch)&lt;br /&gt;
* [https://fragglet.github.io/lhasa/ lhasa by fragglet] – eine ausschließlich zum Dekomprimieren geeignete LHa-Implementierung als [[Freie Software]] (englisch)&lt;br /&gt;
* [http://gnuwin32.sourceforge.net/packages/lha.htm LHa for Windows] – LHa-Portierung aus dem [[GnuWin32]]-Projekt (englisch)&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Lha}}&lt;br /&gt;
[[Kategorie:Packprogramm]]&lt;br /&gt;
[[Kategorie:Archivformat]]&lt;br /&gt;
[[Kategorie:Amiga]]&lt;/div&gt;</summary>
		<author><name>imported&gt;InternetArchiveBot</name></author>
	</entry>
</feed>