Micro-Controller 8051: Wie Adressen der Eingänge an JB & CJNE Anweisungen bekommen?
-
06-07-2019 - |
Frage
Ich bin der Umsetzung ganze Reihe von 8051 Anweisungen in VHDL von Grund auf neu. Die meisten Dinge gut gelaufen, aber stolperte über diese 2 Anweisungen:
JB bit,rel
00100000 bit_address rel_address
CJNE A,#data,rel
10110100 immediate_data rel_address
Jede Hilfe oder Hinweis wird sehr geschätzt. Vielen Dank im Voraus!
Lösung
Die relative Adresse wird vom Programmierer geliefert. Dies wird typischerweise durch den Monteur von Etiketten berechnet.
Ihre asm-Datei enthält:
...asm code
...asm code
JB some_bit, some_label
...more asm code
...more asm code
...more asm code
some_label:
...more asm code
...more asm code
Der Assembler wird den Code zwischen dem JB-Befehl und dem Etikett analysieren und die Anzahl der Bytes benötigt berechnet Offset auf das Etikett zu bekommen, dies ist die Zahl an dem JB-Befehl-Feeds.
Hier ist eine gute Erklärung für die 8051 Anweisungen.
Andere Tipps
Vielleicht könnten Sie einige Hinweise von http erhalten: //www.cs. ucr.edu/~dalton/i8051/i8051syn/ ?