Chèn Phần Tử Trong (MIPS)
Thứ Ba, 30 tháng 10, 2018
/
No Comments
.data nhap: .asciiz "Nhap So Luong Phan Tu: " nhap2: .asciiz "Nhap Phan Tu: " output: .asciiz "Phan Tu Lon Nhat La: " space: .asciiz "\t" array: .word 0:100 .text main: # Nhap So luong phan tu la $a0,nhap li $v0,4 syscall li $v0,5 syscall move $t0,$v0 # Nhap Phan Tu la $a0,nhap2 li $v0,4 syscall xor $t1,$t1,$t1 la $t2,array li $v0,5 syscall lap: sw $v0,($t2) addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,lap xor $t1,$t1,$t1 la $t2,array lw $t3,($t2) move $t4,$t3 max: lw $t3,($t2) blt $t3,$t4,next move $t4,$t3 next: addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,max la $a0,output li $v0,4 syscall li $v0,1 move $a0,$t4 syscall li $v0,10 syscall
.data msg_input: .asciiz "Nhap So Luong Phan Tu Mang: " msg_input2: .asciiz "Nhap Phan Tu: " msg_input3: .asciiz "Nhap Vao 1 So Nguyen: " space: .asciiz "\t" msg_output: .asciiz "Ket Qua: " arr: .word 0:100 .text main: # Nhap So Luong Phan Tu la $a0,msg_input li $v0,4 syscall # Chuyen qua thanh ghi $t0 li $v0,5 syscall move $t0,$v0 # Nhap cac phan tu cua mang li $v0,4 la $a0,msg_input2 syscall li $t1,0 la $t2,arr lap: li $v0,5 syscall sw $v0,($t2) addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,lap # Nhap M li $v0,4 la $a0,msg_input3 syscall li $v0,5 syscall move $t3,$v0 li $v0,4 la $a0,msg_output syscall # xu ly li $t1,0 la $t2,arr xuly: lw $t4,($t2) ble $t4,$t3,tiep # input on display li $v0,1 move $a0,$t4 syscall # KHoang Trang li $v0,4 la $a0,space syscall tiep: addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,xuly li $v0,10 syscall
.data msg_input: .asciiz "Nhap Vao So Luong Phan Tu Mang: " msg_output: .asciiz "Tong Cac Phan Tu Le: " msg_input2: .asciiz "Nhap Vao Phan Tu: " int_array: .word 0:100 .text main: # Nhap So Luong Phan Tu la $a0,msg_input li $v0,4 syscall # Chuyen qua thanh ghi $t0 li $v0,5 syscall move $t0,$v0 # Xuong hang la $a0,line_break li $v0,4 syscall # Nhap cac phan tu cua mang la $a0,msg_input2 li $v0,4 syscall xor $t1,$t1,$t1 la $t2,int_array loop_input: li $v0,5 syscall sw $v0,($t2) addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,loop_input # Tinh tong cac phan tu le cua mang xor $t1,$t1,$t1 la $t2,int_array li $t4,0 li $t5,2 loop_tong: lw $t3,($t2) div $t3,$t5 mfhi $t6 beqz $t6,end_if add $t4,$t4,$t3 end_if: addi $t1,$t1,1 addi $t2,$t2,4 blt $t1,$t0,loop_tong la $a0,msg_output li $v0,4 syscall move $a0,$t4 li $v0,1 syscall li $v0,10 syscall
.data nhap1: .asciiz "Nhap so thu 1: " nhap2: .asciiz "Nhap so thu 2: " tong: .asciiz "Tong = " hieu: .asciiz " Hieu = " tich: .asciiz " Tich = " thuong: .asciiz " Thuong = " du: .asciiz " So du = " .text .globl main main: la $a0,nhap1 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t0,$0,$v0 la $a0,nhap2 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t1,$0,$v0 Tong: add $t2,$t0,$t1 la $a0,tong add $v0,$0,4 syscall add $a0,$0,$t2 add $v0,$0,1 syscall Hieu: sub $t2,$t0,$t1 la $a0,hieu add $v0,$0,4 syscall add $a0,$0,$t2 add $v0,$0,1 syscall Tich: la $a0,tich add $v0,$0,4 syscall mult $t0,$t1 mflo $t3 add $a0,$0,$t3 add $v0,$0,1 syscall Thuong: la $a0,thuong add $v0,$0,4 syscall div $t0,$t1 mflo $t3 add $a0,$0,$t3 add $v0,$0,1 syscall la $a0,du add $v0,$0,4 syscall mfhi $t3 add $a0,$0,$t3 add $v0,$0,1 syscall
.data nhap1: .asciiz "Nhap So Thu Nhat: " nhap2: .asciiz "Nhap So Thu Hai: " hieu: .asciiz "Hieu= " .text .globl main main: la $a0,nhap1 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t0,$0,$v0 la $a0,nhap2 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t1,$0,$v0 Hieu: sub $t2,$t0,$t1 la $a0,hieu add $v0,$0,4 syscall add $a0,$0,$t2 add $v0,$0,1 syscall
.data nhap1: .asciiz "Nhap So Thu Nhat: " nhap2: .asciiz "Nhap So Thu Hai: " tong: .asciiz "Tong= " .text .globl main main: la $a0,nhap1 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t0,$0,$v0 la $a0,nhap2 add $v0,$0,4 syscall add $v0,$0,5 syscall add $t1,$0,$v0 #Tinh Tong Tong: add $t2,$t0,$t1 la $a0,tong add $v0,$0,4 syscall add $a0,$0,$t2 add $v0,$0,1 syscall
.data Nhap: .asciiz "Nhap Vao 1 So: " lnbrk: .asciiz "\n" Tong: .asciiz "Tong= " .text main: # Nhap Ky Tu Thu Nhat la $a0,Nhap li $v0,4 syscall # Nhap li $v0,5 syscall # Gan Gia Tri Thu Nhat move $t1,$v0 # Xuong Dong la $a0,lnbrk li $v0,4 syscall # Nhap so thu hai la $a0,Nhap li $v0,4 syscall li $v0,5 syscall move $t2,$v0 # Line Brank la $a0,lnbrk li $v0,4 syscall # Cong add $t2,$t1,$t0 syscall la $a0,Tong li $v0,4 syscall