initial commit
This commit is contained in:
parent
914e283ac0
commit
7ec1f85d51
66
program.s
Normal file
66
program.s
Normal file
@ -0,0 +1,66 @@
|
||||
.text
|
||||
.org 0x20
|
||||
|
||||
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
|
||||
izvorna_koda_pocisceno: .space 120
|
||||
|
||||
.align
|
||||
tabela_oznak: .space 100
|
||||
|
||||
.align
|
||||
|
||||
.global _start
|
||||
_start:
|
||||
@ vas program napisite tu!
|
||||
|
||||
@ pocistimo registre, ker jih cpulator ne
|
||||
mov r0, #0
|
||||
mov r1, #0
|
||||
mov r2, #0
|
||||
mov r3, #0
|
||||
mov r4, #0
|
||||
|
||||
ADR R0, izvorna_koda
|
||||
ADR R2, izvorna_koda_pocisceno
|
||||
SUB R0, R0, #1 @ da lahko pri iteraciji cez adreso zacnemo pri nicli
|
||||
|
||||
PRECISCEVANJE:
|
||||
LDRB R1, [R0, #1]!
|
||||
|
||||
CMP R1, #0
|
||||
BEQ _end
|
||||
|
||||
@ pogledamo za @
|
||||
CMP R1, #64
|
||||
BEQ KOMENTAR
|
||||
|
||||
@ pogledamo za novo vrstico
|
||||
CMP R1, #10
|
||||
BEQ NEWLINE
|
||||
|
||||
B POSODOBI_PRECISCENO
|
||||
|
||||
KOMENTAR:
|
||||
@ iteracija do \n znaka da vidimo in prepisemo komentar z nulami
|
||||
|
||||
@ 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]!
|
||||
B KOMENTAR
|
||||
|
||||
NEWLINE:
|
||||
MOV R5, #1
|
||||
B POSODOBI_PRECISCENO
|
||||
|
||||
POSODOBI_PRECISCENO:
|
||||
STRB R1, [R2, #1]!
|
||||
B PRECISCEVANJE
|
||||
|
||||
_end: b _end
|
Loading…
x
Reference in New Issue
Block a user