You are on page 1of 3

.

data
count_hoa: .asciiz "Chu hoa : "
count_thuong: .asciiz "Chu thuong : "
count_so: .asciiz "So : "
nline: .asciiz "\n"
str_input: .asciiz

.text
li $v0, 8
la $a0, str_input
li $a1, 40
syscall

li $t2, 0
li $t3, 0
li $t4, 0

loop:
lb $t0, 0($a0)
beqz $t0, endloop

blt $t0, 'A', check_lower


bgt $t0, 'Z', check_lower
addi $t2, $t2, 1
j continue

check_lower:
blt $t0, 'a', check_digit
bgt $t0, 'z', check_digit
addi $t3, $t3, 1
j continue
check_digit:
blt $t0, '0', continue
bgt $t0, '9', continue
addi $t4, $t4, 1

continue:
addi $a0, $a0, 1
j loop

endloop:
li $v0, 4
la $a0, count_hoa
syscall
li $v0, 1
move $a0, $t2
syscall

li $v0, 4
la $a0, nline
syscall

li $v0, 4
la $a0, count_thuong
syscall
li $v0, 1
move $a0, $t3
syscall

li $v0, 4
la $a0, nline
syscall
li $v0, 4
la $a0, count_so
syscall
li $v0, 1
move $a0, $t4
syscall

You might also like