Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- start:
- mov ax, @data
- mov ds, ax
- mov cl, [m]
- mov ebx, 0 ;счетчик элементов
- mov al, [matrix+ebx];инициализируем начальный минимальный элемент
- mov min, al
- loopForM:
- push cx ;сохраняем текущее значение счетчика по m
- mov cl, [n] ;counter by n
- mov al, [matrix+ebx]
- mov max, al
- loopForN:
- push cx
- mov al, [matrix+ebx]
- mov ah, max
- cmp al, ah
- jle ifNotGreater
- mov max, al
- ifNotGreater:
- inc ebx
- pop cx
- loop loopForN
- pop cx ;возвращаем значение счетчика по m
- mov al, min
- mov ah, max
- cmp cl, m
- je skipFindMin
- cmp al, ah
- jle ifNotGreater2
- mov min, ah
- mov al, m
- sub al, cl
- inc al
- mov lineWithMin, al
- ifNotGreater2:
- jmp endFindMin
- skipFindMin:
- mov lineWithMin, 1
- mov min, ah; Кладем максимальный элемент первой строки
- endFindMin:
- loop loopForM
- mov al, lineWithMin
- call print_byte_sdec
- mov ah, 04Ch
- int 21h
- end start start:
- mov ax, @data
- mov ds, ax
- mov cl, [m]
- mov ebx, 0 ;счетчик элементов
- mov al, [matrix+ebx];инициализируем начальный минимальный элемент
- mov min, al
- loopForM:
- push cx ;сохраняем текущее значение счетчика по m
- mov cl, [n] ;counter by n
- mov al, [matrix+ebx]
- mov max, al
- loopForN:
- push cx
- mov al, [matrix+ebx]
- mov ah, max
- cmp al, ah
- jle ifNotGreater
- mov max, al
- ifNotGreater:
- inc ebx
- pop cx
- loop loopForN
- pop cx ;возвращаем значение счетчика по m
- mov al, min
- mov ah, max
- cmp cl, m
- je skipFindMin
- cmp al, ah
- jle ifNotGreater2
- mov min, ah
- mov al, m
- sub al, cl
- inc al
- mov lineWithMin, al
- ifNotGreater2:
- jmp endFindMin
- skipFindMin:
- mov lineWithMin, 1
- mov min, ah; Кладем максимальный элемент первой строки
- endFindMin:
- loop loopForM
- mov al, lineWithMin
- call print_byte_sdec
- mov ah, 04Ch
- int 21h
- end start start:
- mov ax, @data
- mov ds, ax
- mov cl, [m]
- mov ebx, 0 ;счетчик элементов
- mov al, [matrix+ebx];инициализируем начальный минимальный элемент
- mov min, al
- loopForM:
- push cx ;сохраняем текущее значение счетчика по m
- mov cl, [n] ;counter by n
- mov al, [matrix+ebx]
- mov max, al
- loopForN:
- push cx
- mov al, [matrix+ebx]
- mov ah, max
- cmp al, ah
- jle ifNotGreater
- mov max, al
- ifNotGreater:
- inc ebx
- pop cx
- loop loopForN
- pop cx ;возвращаем значение счетчика по m
- mov al, min
- mov ah, max
- cmp cl, m
- je skipFindMin
- cmp al, ah
- jle ifNotGreater2
- mov min, ah
- mov al, m
- sub al, cl
- inc al
- mov lineWithMin, al
- ifNotGreater2:
- jmp endFindMin
- skipFindMin:
- mov lineWithMin, 1
- mov min, ah; Кладем максимальный элемент первой строки
- endFindMin:
- loop loopForM
- mov al, lineWithMin
- call print_byte_sdec
- mov ah, 04Ch
- int 21h
- end start start:
- mov ax, @data
- mov ds, ax
- mov cl, [m]
- mov ebx, 0 ;счетчик элементов
- mov al, [matrix+ebx];инициализируем начальный минимальный элемент
- mov min, al
- loopForM:
- push cx ;сохраняем текущее значение счетчика по m
- mov cl, [n] ;counter by n
- mov al, [matrix+ebx]
- mov max, al
- loopForN:
- push cx
- mov al, [matrix+ebx]
- mov ah, max
- cmp al, ah
- jle ifNotGreater
- mov max, al
- ifNotGreater:
- inc ebx
- pop cx
- loop loopForN
- pop cx ;возвращаем значение счетчика по m
- mov al, min
- mov ah, max
- cmp cl, m
- je skipFindMin
- cmp al, ah
- jle ifNotGreater2
- mov min, ah
- mov al, m
- sub al, cl
- inc al
- mov lineWithMin, al
- ifNotGreater2:
- jmp endFindMin
- skipFindMin:
- mov lineWithMin, 1
- mov min, ah; Кладем максимальный элемент первой строки
- endFindMin:
- loop loopForM
- mov al, lineWithMin
- call print_byte_sdec
- mov ah, 04Ch
- int 21h
- end start
Add Comment
Please, Sign In to add comment