Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .model small ; определить тип модели памят и
- .386 ; разрешить использование инструкций 386 процессора
- stack 100h ; определить сегмент стека размером 256 байт
- dataseg ; определить сегмент данных
- AB db 0FEh, 0EFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh
- MX dw 0
- IT dw 8
- codeseg ; определить сегмент кода
- start: ; начало выполнения программы (см.последнюю строку)
- startupcode ; установить в DS адрес начала сегмента данных (лучше не изменять)
- lea BX, AB ; заносим массив ARR в BX
- mov CX, IT ; заноосим размер массива в CX
- mov DX, 0 ; заносим 0 в AX
- LI:
- mov CX, 8
- mov AH, 80h
- mov AL, [BX]
- LJ:
- test AL, AH
- jnz new_max
- jz null_DX
- body:
- shr AH, 1
- loop LJ
- mov CX, IT
- dec IT
- inc BX
- loop LI
- jmp quit
- new_max:
- inc DX
- cmp MX, DX
- jl max
- jmp body
- max:
- mov MX, DX
- jmp body
- null_DX:
- mov DX, 0
- jmp body
- quit: ; метка конеца работы
- exitcode 0 ; передать управление операционной системе. код возврата 0
- end start ; конец программы. указанная метка соответствует началу исполняемого кода
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement