Ưùng dúng đeơ tính trung bình

Một phần của tài liệu giáo trình hợp ngữ nâng cao (Trang 90 - 92)

DIV BX OVERFLOW

Thuaơt toán

7.6 Ưùng dúng đeơ tính trung bình

Giạsửmoơtlớpgoăm5sinhvieđnvàcó4mođnthi.Kêtqụachobởimạng2 chieăunhưsau:

Chúngtasẽviêt1chươngtrìnhtínhđieơmtrungbình chomoêibàithi.Đeơlàm đieăunàycótheơtoơngtheocoơtroăichiacho5.

Thuaơttoán: TeđnSinh

vieđn TEST1 TEST2 TEST3 TEST4

MARY 67 45 98 33

SCOTT 70 56 87 44

GEORGE 82 72 89 40

BETH 80 67 95 50

1.j=4 2.repeat

3.Sumthescoresincolumnj

4.dividesumby5togetaverageincolumnj 5.j=j-1

5.Untilj=0

Chương 7: Mạng và các chê đoơ địa chư 95 Trongđó bước3 cótheơlàmnhưsau:

Sum[j]=0 i=1

FOR5timesDO

Sum[j]=Sum[j]+Score[i,j] i=i+1

END_FOR

Chươngtrìnhcótheơviêtnhưsau:

TITLE PGM7_4:CLASSAVERAGE .MODEL SMALL .STACK 100H .DATA FIVE DB 5 SCORES DW 67,45,98,33 ;MARY DW 70,56,87,44 ;SCOTT DW 82,72,89,40 ;GEORGE DW 80,67,,95,50 ;BETH DW 78,76,92,60 ;SAM AVG DW 5 DUP (0) .CODE MAINPROC MOV AX,@DATA MOV DS,AX ;J=4 REPEAT:

MOV SI,6 ;SI chư đêncoơtthứ4

XOR BX,BX ;BXchưhàng thứnhât XOR AX,AX ;AXchứatoơngtheocoơt ;Toơngđieơmtređncoơtj

FOR:

ADD AX,SCORES[BX+SI]

ADD BX,8 ; BXchưđênhàngthứ2 LOOPFOR

;end_for

;tínhtrungbình coơtj

XOR DX,DX ;xoáphaăncaocụasôbịchia(DX:AX) DIV FIVE ;AX=AX/5

SUB SI,2 ;đêncoơttiêp ;untilj=0

JNL REPEAT

Chương 7: Mạng và các chê đoơ địa chư 96 ;DOSEXIT

MOV AH,4CH INT 21H

MAIN ENDP

END MAIN

SaukhibieđndịchchươngtènhcótheơdùngDEBUGđeơcháyvàxemkêtqụa baỉngleơnhDUMP.

Một phần của tài liệu giáo trình hợp ngữ nâng cao (Trang 90 - 92)

Tải bản đầy đủ (DOCX)

(95 trang)
w