Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text
- .global main
- .global getchar
- main:
- push {lr}
- mov r7,#0
- mov r8,#0
- mov r9,#0
- mov r6,#0
- bl read
- read:
- bl getchar
- mov r1, r0
- cmp r1,#-1
- beq printout
- cmp r1,#10
- cmpne r1,#32
- bne addchar
- cmp r6,#0
- beq addword
- cmp r1,#10
- beq addline
- b read
- addline:
- add r7,#1
- b read
- addword:
- add r9,#1
- add r8,#1
- mov r6,#1
- cmp r1,#10
- beq addline
- b read
- addfinalword:
- add r8,#1
- mov r6,#1
- bl printout
- addchar:
- add r9,#1
- mov r6,#0
- b read
- printout:
- cmp r6,#0
- beq addfinalword
- mov r1,r7
- ldr r0,=format
- bl printf
- mov r1,r8
- ldr r0,=format
- bl printf
- mov r1,r9
- ldr r0,=format
- bl printf
- bl getchar
- pop {lr}
- bx lr
- .data
- format:
- .asciz " %d\n"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement