Update program.s
This commit is contained in:
parent
bdbe8fc23f
commit
7bf92a6271
36
program.s
36
program.s
@ -3,7 +3,9 @@
|
||||
|
||||
izvorna_koda: .asciz " \n\n stev1: .var 0xf123 @ komentar 1\n @prazna vrstica \n stev2: .var 15
|
||||
\nstev3: .var 128\n_start:\n mov r1, #5 @v r1 premakni 5\nmov r2, #1\nukaz3: add r1, #1\nb _start"
|
||||
.align
|
||||
|
||||
buffer: .space 50
|
||||
.align
|
||||
izvorna_koda_pocisceno: .space 120
|
||||
|
||||
@ -36,7 +38,6 @@ CMP R1, #10 @ \n
|
||||
BEQ PRECISTI_ZACETEK
|
||||
|
||||
SUB R0, R0, #1
|
||||
B PRECISCEVANJE
|
||||
|
||||
PRECISCEVANJE:
|
||||
LDRB R1, [R0, #1]!
|
||||
@ -49,27 +50,40 @@ BEQ KOMENTAR
|
||||
|
||||
@ pogledamo za novo vrstico
|
||||
CMP R1, #10
|
||||
BEQ NEWLINE
|
||||
BEQ NEWLINE_PRVIC
|
||||
|
||||
B POSODOBI_PRECISCENO
|
||||
|
||||
KOMENTAR:
|
||||
@ iteracija do \n znaka da vidimo in prepisemo komentar z nulami
|
||||
|
||||
LDRB R1, [R0, #1]!
|
||||
@ preverimo ali je nova vrstica
|
||||
CMP R1, #10
|
||||
@ verjetno treba posodobiti, da ne bo neposrednih onelinerjev
|
||||
BEQ PRECISCEVANJE
|
||||
|
||||
@ ce ni damo povecamo naslov
|
||||
LDRB R1, [R0, #1]!
|
||||
BEQ KOMENTAR_EOL
|
||||
B KOMENTAR
|
||||
|
||||
NEWLINE: @ ko dobimo \n pocisti vse whitespacee
|
||||
LDRB R1, [R0, #1]!
|
||||
CMP R1, #32
|
||||
KOMENTAR_EOL:
|
||||
LDRB R3, [R2] @ ce je prejsnji znak \n potem ne bomo vstavili se enega
|
||||
|
||||
CMP R3, #10 @ pogledamo za novo vrstico
|
||||
BEQ NEWLINE
|
||||
B POSODOBI_PRECISCENO
|
||||
|
||||
STRB R1, [R2, #1]!
|
||||
B NEWLINE
|
||||
|
||||
NEWLINE_PRVIC:
|
||||
@ prvi newline char prepisemo preostale pobrisemo
|
||||
STRB R1, [R2, #1]!
|
||||
|
||||
NEWLINE: @ ko dobimo \n pocisti vse whitespacee
|
||||
@ mislim da tukaj ne pocisti
|
||||
LDRB R1, [R0, #1]!
|
||||
CMP R1, #32 @ presledek
|
||||
BEQ NEWLINE
|
||||
|
||||
SUB R0, R0, #1
|
||||
B PRECISCEVANJE
|
||||
|
||||
POSODOBI_PRECISCENO:
|
||||
STRB R1, [R2, #1]!
|
||||
|
Loading…
x
Reference in New Issue
Block a user