. .
1.
, . .
4 1.01.-2002. . .
2.
, .
. . , .
, .
:
1) , ;
2) ;
3) - ;
4) ;
5) .
3.
:
1) , ;
2) ;
3) ;
4) - ;
5) ;
6) ;
7) - ;
8) ;
9) ;
10) .
4. .
.
1. . .
2. . .
1.
, . , . , . , .
, . , . .
|
|
, . , 16- .
, . , . 5.1.
. 5.1. 1
) ; )
1 .
Name | WordSumm | ||||
Data | Segment | ||||
Arr1 | DW | 100 DUP(?) | ; 1- | ||
Arr2 | DW | 200 DUP(?) | ; 2- | ||
Sum1 | DD | ? | ; 1- | ||
Sum2 | DD | ? | ; 2- | ||
Data | Ends | ||||
Stack | Segment | ||||
DW | 5 DUP(?) | ||||
Top | Labl | Word | |||
Code | Segment | ||||
Assume CS:Code, DS:Data, SS:Stack | |||||
; | |||||
Summ | roc | Near | |||
MOV | AX, 0 | ; | |||
MOV | DX, AX | ||||
M1: | ADD | AX, [SI] | ; | ||
; | |||||
ADC | DX, 0 | ; | |||
ADD | SI, 2 | ; | |||
LOOP | M1 | ; ? ; , | |||
MOV | [DI], AX | ; | |||
MOV | [DI + 2], DX | ||||
Summ | Endp | ||||
; | |||||
Start: | MOV | AX, Data | ; : | ||
MOV | DS, AX | ; | |||
MOV | AX, Stack | ; | |||
MOV | SS, AX | ||||
LEA | SP, Top | ; | |||
LEA | SI, Arr1 | ; | |||
LEA | DI, Sum1 | ; 1- | |||
MOV | CX, length Arr1 | ; | |||
CALL | Summ | ; | |||
LEA | Si, Arr2 | ; | |||
LEA | Di, Sum2 | ; 2- | |||
MOV | CX, length Arr2 | ; | |||
CALL | Summ | ; | |||
Code | Ends | ||||
End | Start | ||||
2.
, . , . .
2 1, , 1, .
|
|
2 . 5.2.
2 .
Name | Word Summ | |||
Data | Segment | |||
Arr1 | DW | 100 DU(?) | ; 1- | |
Arr2 | DW | 200 DU(?) | ; 2- | |
Sum1 | DD | ? | ; 1- | |
Sum2 | DD | ? | ; 2- | |
Data | Ends | |||
Code | Segment | |||
Assume | CS:Code, DS:Data | |||
; | ||||
Summ | Macro | Arr, Sum | ||
Local | M1 | ; | ||
LEA | Si, Arr | ; | ||
MOV | CX, length Arr | ; | ||
MOV | AX, 0 | ; | ||
MOV | DX, AX | |||
M1: | ADD | AX, [Si] | ; | |
; | ||||
ADC | DX, 0 | ; | ||
ADD | SI, Type Arr | ; |
. 5.2. 2
) ; )
LOOP | M1 | ; ? , ; | ||
MOV | Word ptr Sum, AX | ; | ||
MOV | Word ptr Sum + 2, DX | |||
Endm | ||||
; | ||||
Start: | MOV | AX, Data | ; | |
MOV | DS, AX | |||
Summ | Arr1, Sum1 | ; ; 1- | ||
Summ | Arr2, Sum2 | ; ; 2- | ||
Code | Ends | |||
End | Start |