(a - z) from the keyboard in lowercase, converts it to uppercase (A - Z), prints it to the screen, and loops endlessly is the goal of a lc3 assembly programme.
.ORIG x3000
LOOP LDI R0,KBSR
BRzp LOOPS
LDI R0,KBDR
LD R1,a
ADD R3,R0,R1 ; R3 = R0+R1
BRzp LOWER; if the entered character is larger than a then it is either lowercase or other
LD R1,A
ADD R3,R0,R1
BRzp UPPER; if the entered character is larger than A then it is either an Upper case
BR LOOP; if the entered character is smaller than A then it can be ignored, read the next character
UPPER LD R1,Z
ADD R3,R0,R1
BRp LOOP; if the character is less than Z then it is Upper case else next char
LD R1, MORE; convert the upper to lower case by adding 32
ADD R0,R1,R0
BR PRINT; print the char
LOWER LD R1,z
ADD R3,R0,R1
BRp LOOP; if the character is less than z then it is Upper case else next char
LD R1, LESS; convert the upper to lower case by subtracting 32
ADD R0,R1,R0
BR PRINT; print the char
PRINT LDI R1, DSR; Loop if Ready not set
BRzp PRINT
STI R0, DDR; send the character to be echoed
BR LOOP; next char
HALT
DSR .FILL xFE04
DDR .FILL xFE06
KBSR .FILL xFE00
KBDR .FILL xFE02
a . FILL #-97
z . FILL #-122
A . FILL #-65
Z . FILL #-90
MORE .FILL #32
LESS .FILL #-32
.END
Learn more about loops here:
https://brainly.com/question/29823293
#SPJ4