initial commit
This commit is contained in:
		
							
								
								
									
										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
 | 
			
		||||
		Reference in New Issue
	
	Block a user