Forum: Mikrocontroller und Digitale Elektronik 8085-Befehl ANI


von Robert (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,

ich bin ein absoluter Anfänger und bräuchte deshalb mal Eure Hilfe.
Ich habe in meinem Lehrbuch eine Aufgabe in der ein Messwert eingelesen
werden soll. Liegt er über oder unter einem bestimmten Wert, wird dies
mit LED's signalisiert. Liegt er im vorgegebenen Wert leuchtet eine
andere LED.
Jetzt meine Frage. Was bewirkt der Befehl ANI????? Ich habe schon
seitenweise gegooglet aber nichts gefunden. In meinem Lehrbuch steht
lediglich drin, dass damit der Akku mit einer Konstanten UND-verknüpft
wird. Es ist allerdings nicht erklärt wie.
Laut dem Quelltext splitten die damit das 8-Bit Datenwort irgendwie
auf.
Kann mir einer von Euch da helfen.

Gruß Robert

von Gerd Laschinski (Gast)


Lesenswert?

Scheit so etwas wie "AND with Immediate" zu sein. Also logische
UND-Verknüpfung des Akkumulators mit einer Konstanten.

Gruß
Gerd

von Michi (Gast)


Lesenswert?

Du meinst wohl den Befehl "ANL". Schau mal danach.

Die UND-Verknüpfung ist doch einfach. Sicherlich wird einfach die
logische UND-Verknüpfung zwischen der Konstanten und dem Akku wieder in
den Akku geschrieben.
Was eine UND-Verknüpfung ist, weisst Du aber?

von OldBug (Gast)


Lesenswert?

http://scitec.uwichill.edu.bb/cmp/online/el21c/lesson18.html

"ANI           Logical AND with Accumulator Using Immediate Data"

von OldBug (Gast)


Lesenswert?

Achja: Seitenweise gegooglet habe ich dafür nicht ;)
Gleich der erste Hit bei "+8085 +instruction +set" liefert das
Ergebnis...

von dds5 (Gast)


Lesenswert?

Hallo Robert,
Dein Buch erkärt das völlig richtig. ANI steht für ANd Immediate und
führt eine Bitweise UND-Verknüpfung zwischen dem Inhalt des Akku und
einer im Befehl als zweites Byte enthaltenen Konstante durch.

Oder anders ausgedrückt:
Alle Bits im Akku, bei denen das gleiche Bit in der Konstante 1 ist
bleiben unverändert, während alle anderen Bits im Akku auf 0 gesetzt
werden.

Dieter

von Robert (Gast)


Lesenswert?

Danke für die schnellen Antworten.

@OldBug Diesen Link habe ich auch schon gefunden. Allerdings hat das
mein Problem nicht gelöst. Mein Problem lag darin, dass ich zu blöd war
diese UND-Verknüpfung zu begreifen (um auf Michis Antwort
zurückzukommen)

@dds5 Genau das ist das was ich gesucht habe.

Ich glaub da habe ich noch eine Menge Arbeit vor mir.

Gruß Robert

von OldBug (Gast)


Lesenswert?

Naja, dann solltest Du Dich erst mal mit ein paar grundlegen
Logikschaltungen beschäftigen. Wirklich!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.