Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

Change this program to loop until it encounters a sentinel value, which is a negative number. The data begins at x3100. Use only one branch command. There will always be at least one positive integer...

1 answer below »

Change this program to loop until it encounters a sentinel value, which is a negative number. The data begins at x3100. Use only one branch command. There will always be at least one positive integer in the list.

Do not submit a count controlled loop. This results in a 0 grade.

This program includes two peer reviews, which are assigned anonymously. These are due five days after the assignment submission date.

When the program ends, R2 must contain the number of values summed and R3 must contain the sum of those values.

ORIG x3000

AND R3, R3, #0

AND R2, R2, #0

ADD R2, R2, #12

BRz #5

LDR R4, R1, #0

ADD R3, R3, R4

ADD R1, R1, #1

ADD R2, R2, #-1

BRnzp #-6

.END

Rubric


Answered 1 days After Oct 16, 2021

Solution

Gaurav answered on Oct 17 2021
140 Votes
.ORIG x3000
AND R3, R3, #0    ;sum is 0
    
AND R2, R2, #0    ; counter is 0
LEA R0,ARRAYBASE    ; GET DATA ARRAY POINTER
Loop:
LDR R4, R0, #0        ; GET ELEMENT FROM ARRAY
ADD R3, R3, R4        ; add value to sum
ADD R0, R0, #1        ; inc pointe
ADD R2, R2, #1        ; inc counte
ADD R4,R4,#0        ; SET FLAGS
BRzp...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here