Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
check_if_sum_other_9_numbers_=_remainder_of_the_third_number:
:4B79 8CD0 MOV AX,SS; we'll work inside the stack...
:4B7B 90 NOP
:4B7C 45 INC BP
:4B7D 55 PUSH BP; save real BP
:4B7E 8BEC MOV BP,SP; BP = stackpointer
:4B80 1E PUSH DS; save real Datasegment
:4B81 8ED8 MOV DS,AX; Datasegment = stacksegment
:4B83 83EC04 SUB SP,+04
:4B86 C45E06 LES BX,[BP+06]; BX points input_start
:4B89 268A07 MOV AL,ES:[BX]; load first number
:4B8C 98 CBW; care only for low
:4B8D C45E06 LES BX,[BP+06]; reset pointer
:4B90 50 PUSH AX; save 1st number
:4B91 268A4701 MOV AL,ES:[BX+01]; load 2nd number
:4B95 98 CBW; only low
:4B96 8BD0 MOV DX,AX; 2nd number in DX
:4B98 58 POP AX; get 1st number
:4B99 03C2 ADD AX,DX; sum with second
:4B9B C45E06 LES BX,[BP+06]; reset pointer
:4B9E 50 PUSH AX; save sum
:4B9F 268A4707 MOV AL,ES:[BX+07]; load 8th number
BA3 98 CBW; only low
BA4 8BD0 MOV DX,AX; 8th number in DX
BA6 58 POP AX; old sum is back
4BA7 03C2 ADD AX,DX; sum 1+2+8
4BA9 C45E06 LES BX,[BP+06]; reset pointer
BAC 50 PUSH AX; save sum
4BAD 268A4703 MOV AL,ES:[BX+03]; load 4rd number
BB1 98 CBW; only low
4BB2 8BD0 MOV DX,AX; #4 in DX
BB4 58 POP AX; sum is back
4BB5 03C2 ADD AX,DX; sum 1+2+8+4
4BB7 C45E06 LES BX,[BP+06]; reset pointer
BBA 50 PUSH AX; save sum
4BBB 268A4704 MOV AL,ES:[BX+04]; load 5th number
BBF 98 CBW; only low
4BC0 8BD0 MOV DX,AX; #5 in DX
BC2 58 POP AX; sum is back
4BC3 03C2 ADD AX,DX; 1+2+8+4+5
4BC5 C45E06 LES BX,[BP+06]; reset pointer
BC8 50 PUSH AX; save sum
4BC9 268A4705 MOV AL,ES:[BX+05]; load 6th number
BCD 98 CBW; only low
4BCE 8BD0 MOV DX,AX; #6 in DX
BD0 58 POP AX; sum is back
4BD1 03C2 ADD AX,DX; 1+2+8+4+5+6
4BD3 C45E06 LES BX,[BP+06]; reset pointer
BD6 50 PUSH AX; save sum
4BD7 268A4706 MOV AL,ES:[BX+06]; load 7th number
BDB 98 CBW; only low
4BDC 8BD0 MOV DX,AX; #7 in DX
Дата публикования: 2014-12-08; Прочитано: 167 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!