Hallo zusammen, ich habe erst angefangen mit Programmieren und habe folgendes Problem:Wie muss ich das programmieren, dass nur die ASCII-Zeichen A-Z (41h-5Ah) und die Zahlen 0-9 (30h-39h) durchgelassen werden ? Alle anderen Zeichen werden ignoriert. Ich schreibe ein Assembler-Programm für den 89C2051 (8051). Danke Jens
Lade A mit dem aktuellen Wert und ziehe anschließend zunächst 30h ab. Wenn Carry gesetzt, war der Wert zu klein. Dann wird 09h (39h-30h) abgezogen, wenn C=0, hast Du eine Zahl gefunden. Wenn nicht, 06h (41h-39h) abziehen ..... Den Rest wirst Du selbst finden.
Vielen Dank Michael, für die schnelle Hilfe. Ich habe es mit CJNE und JC Sprungbefehlen gelöst. Das Programm funktionier schon fast so wie ich es mir vorgestelltt habe. Es wandelt Text in Telegrafiecode und gibt ihn an einem Port aus. Ich habe Zeitschleifen verwendet, um die Punkte,Striche und Pausen zu bilden. Besser wäre den Timer zu nutzen, und die Zeit mit einer Interuptroutine zu verändern. Aber, das wird die nächste Hürde sein.... Ich danke nochmal ! Tschüß Jens DK1JZ
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.