Infos Home | Impressum | Original Artikel & Autoren Liste


80386

80386 ist Bestandteil der Typbezeichnung eines Mikroprozessors der Firma Intel. Dieser und dessen Nachfolger (80486 und Pentium I, II, III, IV) werden heute am häufigsten als CPU in PCs eingesetzt. 80386-Prozessoren wurden erstmals 1986 als Nachfolger des 80286er ausgeliefert.

Die Funktionen des 80386 sind auch in allen Nachfolgemodellen immer noch vorhanden. Die Register dieser Prozessorfamilie sowie der Adressraum der Architektur sind 32 Bit breit.

Eine Spezialvariante war die SX-Version mit einer Busbandbreite von 32bit intern und 16bit extern.

Der 80386 kann direkt bis zu 4 GiB Hauptspeicher adressieren (386SX: 16 MiB). Er hat acht allgemeine 32-Bit-Register, die zum Rechnen und allgemeinen Datenaustausch verwendet werden:

Die "General Purpose"-Register des 80386
Abk. Englischer Name Verwendung
EAX Accumulator allgemein verwendbar, spezielle Bedeutung bei Arithmetikbefehlen
EBX Base Register allgemein verwendbar
ECX Count Register allgemein verwendbar, spezielle Bedeutung bei Schleifen
EDX Data Register allgemein verwendbar, spezielle Bedeutung bei Multiplikation und Division
EBP Base Pointer Zeiger auf temporäre Speicherstellen im Stack (z.B. Stackframe für lokale Variablen etc.)
ESP Stack Pointer Zeiger auf die aktuelle Position im Stacksegment
ESI Source Index Quelle für Stringoperationen
EDI Destination Index Ziel für Stringoperationen

Daneben gibt es auch noch weitere Register zur Steuerung des Verhalten der CPU:

Die Spezialregister des 80386
Abk. Englischer Name Verwendung
EIP Instruction Pointer Zeigt auf den nächsten auszuführenden Befehl. Wird durch Sprunganweisungen verändert.
EFLAGS Flag Register Die einzelnen Bits besitzen unterschiedliche Bedeutungen und zeigen z. B. Überläufe bei arithmetischen Operationen u.ä. an.
CS Code Segment Gibt die Position des Codesegmentes (in dem der aktuell auszuführende Programmcode steht) an.
DS Data Segment Gibt die Position des Datensegmentes (in dem die globalen Daten des Programms stehen) an.
SS Stack Segment Gibt die Position des Stacksegmentes (in dem der Stack für die lokalen Daten und Rücksprungadressen stehen) an.
ES Extra Segment Gibt die Position eines weiteren Datensegmentes (wird z.B. für Stringkopierbefehle verwendet) an.
FS und GS Extra Segment 2 und 3 Gibt die Position zweier weiterer Datensegmente an.
GDTR Global Descriptor Table Register Gibt die Position der GDT an
LDTR Global Descriptor Table Register Gibt die Position der LDT an
IDTR Interrupt Descriptor Table Register Gibt die Position der IDT an
CR0 - CR3 Control Register 0 ... 3 Steuern u.a. das Paging im Protected Mode
TR6 - TR7 Test Register 6 ... 7 ..
DR0 - DR7 Debug Register 0 ... 7 Dienen zum festlegen von Breakpoints auf Prozessorebene (DR0..DR3) u.a.
TR Task Register Segmentselektor des Task Status Segments (TSS)

Der Nachfolger war der 486er.

Siehe auch: Assemblersprache, Mikroprozessoren von Intel, Liste von Nicht-Intel-Mikroprozessoren


Der Ursprungsartikel stammt von der deutschsprachigen Wiki pedia (siehe oben: "Original Artikel & Autoren Liste").
Der Text steht unter der GNU Freie Dokumentation Lizenz.



Webtipps: Zahlensprache | Sport & Fitness Infos