Sign in with
Sign up | Sign in
Your question

[Debug This] : 8086 Assembly Level Program to Find The Greatest Number

Last response: in Applications
Share
February 29, 2012 1:03:21 PM

data segment
ARR db 01h,03h,02h,04h,05h,09h,01h
data ends
code segment
assume cs:code,ds:~data --just to avoid the smiley
start:
MOV AX,data
MOV DS,AX
MOV CX,0006H --Load CX with 6 as there will be 6 comparisons b/w 7 numbers
MOV SI,offset ARR --point to the variable ARR
MOV AL,[SI] --load the first number 01H in AL register
loop_start: --label to mark the beginning of the loop
INC SI --point to the second number in ARR
CMP AL,[SI]
JB swap
LOOP loop_start

swap:
MOV AL,[SI]
LOOP loop_start

int 3
code ends
end start


[QUESTION] :
do you think that this is the right code to find the largest of the given number?
This is my own program and it didnt work well when I executed it. Dont know whats going wrong.
HELP ASAP :) 
a b L Programming
February 29, 2012 1:25:36 PM

What is the result in AL after running the program? It looks OK to me, but I can't be bothered to assemble it and test right now.
m
0
l
March 1, 2012 3:24:39 PM

TASM dosnt work on my PC. Im using win7
m
0
l
a b L Programming
March 1, 2012 4:45:10 PM

That doesn't answer my question. I don't care what assembler you used.

You say it didn't work well when you executed it. So what result did you get?

The easiest way to discover faults in this sort of program is to run it under a debugger. Single-step it and see what is happening.
m
0
l
!