33 lines
788 B
ArmAsm
33 lines
788 B
ArmAsm
.data
|
|
// 0x8000102c
|
|
sentence: .ascii "Become a Prograammermmmmmrr\0"
|
|
// ^
|
|
// ^
|
|
|
|
.text
|
|
.align 2
|
|
.globl _start
|
|
|
|
_start:
|
|
|
|
la t2, sentence # Load the address of sentence into t2
|
|
|
|
li t0, 0x72 // ascii 'm'
|
|
|
|
li t1, 0x00 // licznik wystapien 'm'
|
|
|
|
print_loop:
|
|
lbu t3, 0(t2) # Load the byte (character) from address in t2
|
|
beq t3, zero, done_print # If character is zero (null terminator), exit loop
|
|
|
|
bne t3, t0, 1f
|
|
addi t1, t1, 1
|
|
1:
|
|
|
|
addi t2, t2, 1 # Increment pointer to the next character
|
|
j print_loop # Repeat the loop
|
|
|
|
done_print:
|
|
ebreak # End program (or use an exit system call)
|
|
|