Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

\"border: 0px; height: 0px; margin: 0px; padding: 0px; width: 707px\"> 1. The fo

ID: 3535509 • Letter: #

Question

"border: 0px; height: 0px; margin: 0px; padding: 0px; width: 707px">


1. The following code converts a sentence into all UPPER CASE.

You will use this code to answer all of the following

questions.

.model small

.stack 64

.data

data1 db 'mY NAME is jOe'

ORG 0020H

data2 db 14 dup(?)

.code

MAIN PROC FAR

MOV AX,@DATA

MOV DS,AX


MOV SI, OFFSET DATA1

MOV BX, OFFSET DATA2

MOV CX,14

back:

MOV AL,[SI]

CMP AL,61H

JB over

CMP AL,7AH

JA over

AND AL,11011111b

over:

MOV [BX], AL

INC SI

INC BX

LOOP back


MOV AH,4CH

INT 21H

MAIN ENDP

END MAIN


Â

Starting from the same place as in part (a) and ending with the

command LOOP back, show the contents of each of the relevant

registers and the affected memory areas after the execution of each

instruction though the first iteration of the loop.

i. Assume the value of the stack segment register is 2000h. You

should calculate from the given code the starting location of the

data segment and the code segment assuming they are overlapping

segments to conserve as much memory space as possible.


Explanation / Answer

I stored the whole logic here.

http://www.shrib.com/KPXhJiHB


Kindly dont forget to rate.


Cheers!!!