Question: So i have this MARIE assembly Language homework problem where i am to take a user input and compare using a linear search, to a
So i have this MARIE assembly Language homework problem where i am to take a user input and compare using a linear search, to a list of numbers given {-47, -43, -41, -37, -31, -29, -23, -19, -17, -13, -11, -7, -5, -3, -2, -1, 1, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47}. I have most of it but for some reason I cant figure out why my program is not outputting anything other than the not found function.
ORG 0
JUMP START
BADDR, HEX 0003 /DBEGIN = 0003
EADDR, HEX 0022 /DEND = 0022
DBEGIN, HEX FFD1 /GIVEN LIST OF VALUES
HEX FFD5
HEX FFD7
HEX FFDB
HEX FFE1
HEX FFE3
HEX FFE9
HEX FFED
HEX FFEF
HEX FFF3
HEX FFF5
HEX FFF9
HEX FFF5
HEX FFFD
HEX FFFE
HEX FFFF
HEX 0001
HEX 0002
HEX 0003
HEX 0005
HEX 0007
HEX 000B
HEX 000D
HEX 0011
HEX 0013
HEX 0017
HEX 001D
HEX 001F
HEX 0025
HEX 0029
HEX 002D
DEND, HEX 002F
NUMBER, HEX 0000
LOW, HEX 0000
HIGH, HEX 0000
ONE, DEC 1
NOTTHERE, DEC 0
COUNTLOW, DEC 1
COUNTHIGH, DEC 32
START, INPUT /VALUE ENTERED BY USER
STORE NUMBER /STORES INPUT INTO NUMBER
LOAD BADDR /LOADS BEGIN OF LIST
STORE LOW /STORES THE ADDRESS OF THE START VALUE OF LIST IN LOW
LOAD EADDR /LOADS THE END OF LIST
STORE HIGH /STORES END OF THE LIST VALUE IN HIGH
JUMP COMPARE
COMPARE, LOAD LOW
SUBT NUMBER
SKIPCOND 400 /SKIPS THE LOOP IF LOW-NUMBER = 0
JUMP ADDLOW
OUTPUT
HALT
ADDLOW, LOAD COUNTLOW /LOAD LOW
ADD ONE
STORE COUNTLOW
LOAD COUNTHIGH
SUBT COUNTLOW
SKIPCOND 400 /SKIPS SKIP CONDITION IF HIGH - LOW = 0
JUMP COMPARE
JUMP NOTFOUND /SINCE VALUE HAS NOT BEEN FOUND GOES TO NOT FOUND FUNCTION
NOTFOUND, LOAD NOTTHERE
OUTPUT
HALT
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
