-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprint.asm
82 lines (57 loc) · 810 Bytes
/
print.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
.module print
;Biblioteca para manejar la lectura e impresion de numeros
.globl imprimir_cadena
.globl leer_num
pantalla .equ 0xFF00
teclado .equ 0xFF02
;Variables
num1: .byte 0
num2: .byte 0
num3: .byte 0
temp: .word 0
imprimir_cadena: ;Esta funcion saca por pantalla cadenas acabadas en '\0' apuntadas por x
pshs a
sgte:
lda ,x+
beq ret_imprimir_cadena
sta 0xFF00
bra sgte
ret_imprimir_cadena:
puls a
rts
leer_num:
lda teclado
suba #48
sta num1
lda teclado
cmpa #'\n
beq UnNumero
suba #48
sta num2
lda teclado
cmpa #'\n
beq DosNumero
suba #48
sta num3
ldb #100
lda num1
mul
std temp
ldb #10
lda num2
mul
addb num3
addd temp
bra fin
UnNumero:
ldb num1
lda #0
bra fin
DosNumero:
ldb #10
lda num1
mul
addb num2
lda #0
fin:
rts