Assembler-Beispiel 6D - ADC $hhll.asm
Aus C64-Wiki
Zur Navigation springenZur Suche springen
; Dieses Programm addiert zwei 16-Bit-Zahlen ; und gibt das Ergebnis am Bildschirm aus. ; Programmstart mit SYS 49152 *=$c000 ; Startadresse des Programms AXOUT = $bdcd start clc ; Carry-Bit löschen lda l_zahl1 ; Low-Byte der 1. Zahl mit adc l_zahl2 ; Low-Byte der 2. Zahl addieren sta l_ergebnis ; Low-Byte ins Ergebnis schreiben lda h_zahl1 ; High-Byte der 1. Zahl mit adc h_zahl2 ; High-Byte der 2. Zahl addieren sta h_ergebnis ; High-Byte ins Ergebnis schreiben ldx l_ergebnis ; Low-Byte vom Ergebnis ins X-Register lda h_ergebnis ; High-Byte vom Ergebnis in den Akku jsr AXOUT ; 16-Bit-Zahl ausgeben rts ; Rücksprung ins Basic l_zahl1 .byte $00 ; Zahl1 = $1000 h_zahl1 .byte $10 l_zahl2 .byte $55 ; Zahl2 = $2155 h_zahl2 .byte $21 l_ergebnis .byte $00 ; Ergebnis = $0000 h_ergebnis .byte $00