07-06-2006, 21:54
|
|
|
חבר מתאריך: 07.06.06
הודעות: 2
|
|
בעיה באסמבלי
אני צריך עזרה באסמבלי בשב
נתון לי קטע תוכנית של תוכנית המציבה 6 מספרים החל במען 10h ומבצעת את הפעולות הבאות:
א. מסכמת את המספרים
ב.מחשבת את הממוצע
ג.המספר הגדול ביותר
ד.המספר הקטן ביותר
יש להציג את התוצאות בכתובות 34h 33h 32h 31h 30h
התוכנית(תשנו צד בctrl shift כי התוכנית לא כתובה כמו שהיא צריכה להיות כתובה)
.model small
.stack 100h
.data
mone db 6h
adress dw ?
schum dw ?
max_num db ?
min_num db ?
.code
start:
mov ax,@data
mov ds,ax
mov ah,0h
mov bx,10h
A1:
mov al,[bx]
push ax
dec mone
jz A2
inc bx
jmp A1
A2:
call sum
pop dx
mov di,30h
mov [di],dl
pop dx
mov [di+1],dl
mov [di+2],dh
mov bx,10h
push bx
call max
pop dx
mov [ds:33h],dl
mov bx,10h
push bx
call max
pop dx
mov [ds:33h],dl
mov bx,10h
push bx
call min
pop dx
mov [ds:34h],dl
mov ah,4ch
int 21h
sum:
pop adress
mov mone,0h
mov schum,0h
s1:
pop ax
add schum,ax
inc mone
cmp mone,6h
jbe s1
mov ax,schum
mov dl,6
div dl
push ax
push schum
אז השאלות אל קטע התוכנית
1.תרשום שמות משתנים ותפקידם
2.תרשום שמות תתי תוכניות ותפקידן
3.אלגרותים מילולי לתתי התוכנית
4.אלגוריתם מילולי לכל התוכנית
תודה מראש
נערך לאחרונה ע"י wabtoop בתאריך 07-06-2006 בשעה 22:14.
|