11.2. Hexadezimalcodierung history menue Letztmalig dran rumgefummelt: 19.09.13 19:10:32

Bei hexadezimaler Programmierung übernimmt der Software-Entwickler direkt die Übersetzung seiner Gedanken in rechnerinterne Befehle. Das sind in jedem Falle immer zweistellige Hexadezimalzahlen, deren Rolle damit auch künftig nicht weichen wird. Auch in den modernsten Rechnern werden die übersetzten Programme als Folgen zweistelliger Hexadezimalzahlen im RAM abgelegt - von externen Datenträgern dagegen kann auch eine größere Datenbitbreite angewandt werden (IDE-BUS).
Auch die Entwickler von Einchip-Controllern begeben sich gern auf diese Art der Programmierung - nur hier kann man sicher sein, dass optimaler Code generiert wird (natürlich nur dann, wenn der Entwickler auch wirklich Ahnung hat.

  1. Rechnerbefehlssätze
  2. Programmnotation - Listings - HEX-Dumps
  3. Adressrechnung
  4. Verwandte Themen

die Elektronikseiten

The Mother of Tetraed Codes - der HEX-Code

inhaltlich auf korrektem Stand - evtl. partiell unvollständig ;-)

Wissen für Fortgeschrittene der Informatik

Merke: alle Hochsprachen (ja auch C ++) generieren einen nicht optimalen Zwischencode - der ist immer länger, als auf der Assemblerebene entwickelt.

1. Rechnerbefehlssätze history menue scroll up

In der Assemblersprache werden die einzelnen Maschinenbefehle durch Textzeilen formuliert. Jeder Befehl entspricht einer Zeile, in, der der Operationscode und die Operanden durch Abkürzungen geschrieben werden. Statt, der Speicheradresse, p die der Maschinenbefehl gespeichert wird, bekommt die Assemblerzeile einen Namen (Marke). Da der Rechner jedoch nur Maschinenbefehle versteht, muss ein Assemblerprogramm in Maschinenbefehle umgewandelt werden. Dies realisiert der Assembler.

die beliebte alphabetisch sortierte Schnell-Liste

die beliebte numerisch sortierte Schnell-Liste

Allgemeine FLAG-Wirkung

FLAG-Wirkung auf OP-Code-Gruppen

Z80-Befehlssatz


2. Programmnotation - Listings - HEX-Dumps history menue scroll up

Im Prinzip sind wir hier der Assembler - auf Grundlage der Kenntnis des Prozessors sowie seiner Möglichkeiten, muss ich auf Assemblerebene denken, anschließend die Konvertierungstabellen studieren und für den gewünschten befehl den entsprechenden Code heraus suchen - nichts andres macht übrigens ein Assembler. Auch die Notationsfolge sollte eingehalten werden.

so werden Hex-Listings entwickelt - sie könnten ohne weiteres von einem Assembler übersetzt werden

mit dem Text-Editor werden HEX-Dunmps entwickelt

die Verwandtschaft zur Mnemonic-Codierung ist unmittelbar


3. Adressrechnung history menue scroll up

Komplex wird die Adressrechnung erst bei den relativen Adressierungsarten von Sprüngen. Diese liefern zwar optimale Programme, deren Code im RAM verschoben werden kann und dennoch ohne Änderungen lauffähig bleibt, aber die Adressrechnung ist unangenehm. Ich hab' mir deshalb das folgende kleine Tool entwickelt, welches sämtliche Fallen berücksichtigt - und davon gibt es reichlich ;-)

 
 


4. Verwandte Themen history menue scroll up

Die Hexadzimalcodierung ist vor allem am Anfang für die von uns in AGs gebastelten Microcomputer sehr vorteilhaft einsetzbar. Das geht alles noch relativ einfach und ist noch auch in der Vermittlung zu verstehen. Kommen dann Assembler hinzu, wird's wesentlich komplizierter, aber natürlic auch einfacher, wenn man diese Werkzeuge beherrscht.

Z80-CPU

der LC-80

... und so funktioniert ein Computer

 Z80-CPU-Interrupt

Assembler-Programmierung

 

Hardwarefragen

Struktogramme und Ablaufpläne selbst gemacht ...

ASide-Assembler

The Mother of Tetraed Codes - der HEX-Code

Softwarefragen



zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost im März 2007

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist