Codierung von Zahlen

Auf einer 8-Bit-LED-Anzeige soll abwechselnd folgende Muster ausgegeben werden. Welche Zahlen  müssen in den Ausgabe-Port geschrieben werden (binär, dezimal)?

Die Anzeige  soll sich nach links  (nach rechts) ‘bewegen'. Welche Zahlen muss man nacheinander in den Ausgabeport schreiben? Welchen bekannten arithmetischen Operationen entsprechen diese Bewegungen?

Die 16 Ziffern Hexadezimal-Systems werden mit 0,1,..,9,A,B,C,D,E,F geschrieben. Ein Byte enthält acht Bit, damit lassen sich 256 = 16 x 16 verschiedene Zahlen (Zeichen) codieren. Damit zerfällt ein Byte in einen höherwertigen und in einen niederwertigen Teil von jeweils vier Bit. Jeder dieser Teile kann durch eine hexadezimale Ziffer repräsentiert werden, so dass die Darstellung eines Bytes besonders einfach wird. Das obige Muster zerfällt in zwei gleiche Teile b1010 = 10 = $A bzw. b0101 = 5 = $5. Die angegebenen Muster erhält man also, wenn man die beiden Zahlen $AA bzw. $55 in den Ausgabe-Port schreibt.

Die Abkürzung BCD steht für Binary Coded Decimals. Mit einer 7-Segment-Anzeige kann man 9 als höchste Zahl darstellen. Jede der beiden Ziffern wird im BCD-System getrennt codiert. Um die zehn (Dezimal-)Ziffern 0,...,9 darstellen zu können, benötigt man vier Bit. Die Zahl 9 würde dann also als im BCD-System also als 1001 codiert. Es gibt spezielle BCD-Decodierer.

Aufgaben:

1. Schreibe ein Delphi-Programm mit drei Fenstern: Binär- , Dezimal- und Hexadezimal-Fenster. Bei der Eingabe einer Zahl in einem der drei Systeme soll in den beiden anderen Fenstern automatisch die Zahl in den übrigen Zahlen-Systemen dargestellt werden. Die Tastatur-Eingabe soll den Zahlensystemen entsprechend abgefangen werden. Implementiere Funktionen wie shl und. shtr , bzw. rol und ror.

2. Eine 7-Segment-Anzeige besteht im wesentlichen aus 7 entsprechend angeordneten Leuchtdioden, an die 5V (leuchtet) bzw. 0V (leuchtet nicht) angelegt werden. Entwirf eine 7-Segment-Anzeige mit entsprechend herausgeführten Leitungen. (Je nach Bauart kann das bei verschiedenen Anzeigen verschieden sein). Welches Bitmuster (welche Hexzahl) muss man an den Ausgabeport legen, damit die entsprechende Ziffer erscheint? Kann man mit der 7-Segment-Anzeige auch alle 16 Hex-Ziffern darstellen? Die Frage kann man mit Papier und Bleistift lösen.

3. Schreibe einen Software-BCD-Decoder für Deine 7-Segment-Anzeige

Zurück