$nomod51 ;der Modus fuer 8051 wird abgeschaltet $debug $nolist ;es wird kein Listing fuer reg535 erstellt $include(reg535.pdf) ;die 80535-spezifischen Daten $list ;es wird ein Listing erstellt $ title (ADDITION.A51) ;------------------------------------------------------------------------ ;Programmbeschreibung ;------------------------------------------------------------------------ ;Programm: Addition von zwei Zahlen ; ; ;Datum: 20.01.2002 ;Programmiert: J. Walter ; ;Verwendete Einspruenge: keine ; ;Verwendete Unterprogramme: keine ; ; ;Verwendete Register und Variable: ;Registerbank(0) ;R2 ; ;Kommentar: ; ;Aenderungen: ;Datum: ; ; ;------------------------------------------------------------------------ ;Initialisierungsteil für allgemeine Konstanten ;------------------------------------------------------------------------ ZAHL1 EQU 2 ZAHL2 EQU 3 CSEG AT 0H ;Legt absolute Codesegmentadresse auf 0h ljmp INIT ; ;------------------------------------------------------------------------ ;Interrupt-Vektoren ;------------------------------------------------------------------------ ;------------------------------------------------------------------------ ;Initialisierungsteil für On-Chip Peripherie ;------------------------------------------------------------------------ ORG 100H ;Programmstart bei 100H INIT: ;------------------------------------------------------------------------ ;Programmschleife ;------------------------------------------------------------------------ ABFRAGE: jnb P1.1, ADDITION ;Warteschleife jmp ABFRAGE ADDITION: mov R1,#ZAHL1 ;Schiebe ZAHL1 in das Register R1 mov A,#ZAHL2 ;Schiebe ZAHL2 in den Akku SUMME: add A,R1 ;Addiere R1 + A jb P1.2,SUMME ;Weitere Additionen jmp ABFRAGE end