![]() ![]() |
![]() ![]() |
; Systemnahe Informatik 2004 Uebung 5 Aufgabe 2a ; Division mit Rest durch fortlaufende Subtraktion ; r1=r1/r2, r2=r1 mod r2 .data Divident: .word 101 Divisor: .word 9 .text main: lw r1,Divident lw r2,Divisor jal Division trap 0 .data DivSave3: .space 4 DivSave4: .space 4 .text Division: sw DivSave3,r3 sw DivSave4,r4 beqz r2,Division_durch_Null add r3,r0,r0 ;r3=Quotient while_r1: addi r3,r3,1 ;Quotient++ sub r1,r1,r2 ;Divident-=Divisor sgt r4,r1,r0 ;r4=(r1>0) bnez r4,while_r1 add r2,r1,r2 ;r2=Remainder subi r1,r3,1 ;r1=Quotient Division_end: lw r3,DivSave3 lw r4,DivSave4 jr r31 Division_durch_Null: trap 0 |
![]() ![]() |
![]() ![]() |