Programowanie: Zapis na ekran w różnych systemach liczbowych
From Atariki
(Różnice między wersjami)
Wersja z dnia 06:59, 24 cze 2008 Xxl (Dyskusja | wkład) (uwaga Sebana) ← Previous diff |
Wersja z dnia 07:37, 24 cze 2008 Xxl (Dyskusja | wkład) Next diff → |
||
Linia 14: | Linia 14: | ||
nibbel cmp #$0a | nibbel cmp #$0a | ||
sed | sed | ||
- | adc #'0 | + | adc #$10 |
cld | cld | ||
+ | sta (ekr),y | ||
+ | iny | ||
+ | rts | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | Zapis na ekran liczby BCD: | ||
+ | |||
+ | <pre> | ||
+ | putbcd pha | ||
+ | lsr @ | ||
+ | lsr @ | ||
+ | lsr @ | ||
+ | lsr @ | ||
+ | jsr _bcd | ||
+ | pla | ||
+ | and #$0f | ||
+ | _bcd ora #$10 | ||
sta (ekr),y | sta (ekr),y | ||
iny | iny |
Wersja z dnia 07:37, 24 cze 2008
Zapis na ekran w systemie heksadecymalnym:
Pod adresem wskazywanym przez 'ekr' znajduje się początek pamięci ekranu gdzie będzie zapisana liczba heksadecymalna. Dzięki rejestrowi Y można drukować na ekranie liczby w pętli.
puthex pha lsr @ lsr @ lsr @ lsr @ jsr nibbel pla and #$0f nibbel cmp #$0a sed adc #$10 cld sta (ekr),y iny rts
Zapis na ekran liczby BCD:
putbcd pha lsr @ lsr @ lsr @ lsr @ jsr _bcd pla and #$0f _bcd ora #$10 sta (ekr),y iny rts
Zapis na ekran w systemie binarnym:
putbin ldx #$08 sta temp _bit asl temp lda #$08 rol @ sta (ekr),y iny dex bne _bit rts