Guest User

Untitled

a guest
Aug 20th, 2018
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. start: 
  2.     mov ax, @data      
  3.     mov ds, ax
  4.  
  5.     mov cl, [m]
  6.  
  7.     mov ebx, 0 ;счетчик элементов
  8.    
  9.     mov al, [matrix+ebx];инициализируем начальный минимальный элемент
  10.     mov min, al
  11.    
  12.     loopForM:
  13.         push cx ;сохраняем текущее значение счетчика по m
  14.         mov cl, [n] ;counter by n
  15.         mov al, [matrix+ebx]
  16.         mov max, al
  17.        
  18.         loopForN:
  19.             push cx
  20.    
  21.             mov al, [matrix+ebx]
  22.             mov ah, max
  23.             cmp al, ah
  24.             jle ifNotGreater
  25.                 mov max, al
  26.             ifNotGreater:
  27.            
  28.             inc ebx
  29.             pop cx
  30.         loop loopForN
  31.         pop cx ;возвращаем значение счетчика по m
  32.        
  33.         mov al, min
  34.         mov ah, max
  35.            
  36.         cmp cl, m
  37.         je skipFindMin
  38.             cmp al, ah
  39.             jle ifNotGreater2
  40.                 mov min, ah
  41.                 mov al, m
  42.                 sub al, cl
  43.                 inc al
  44.                 mov lineWithMin, al
  45.             ifNotGreater2:
  46.             jmp endFindMin
  47.         skipFindMin:
  48.             mov lineWithMin, 1
  49.             mov min, ah; Кладем максимальный элемент первой строки
  50.         endFindMin:
  51.     loop loopForM
  52.    
  53.     mov al, lineWithMin
  54.     call print_byte_sdec
  55.    
  56.     mov ah, 04Ch       
  57.     int 21h
  58. end start   start: 
  59.     mov ax, @data      
  60.     mov ds, ax
  61.  
  62.     mov cl, [m]
  63.  
  64.     mov ebx, 0 ;счетчик элементов
  65.    
  66.     mov al, [matrix+ebx];инициализируем начальный минимальный элемент
  67.     mov min, al
  68.    
  69.     loopForM:
  70.         push cx ;сохраняем текущее значение счетчика по m
  71.         mov cl, [n] ;counter by n
  72.         mov al, [matrix+ebx]
  73.         mov max, al
  74.        
  75.         loopForN:
  76.             push cx
  77.    
  78.             mov al, [matrix+ebx]
  79.             mov ah, max
  80.             cmp al, ah
  81.             jle ifNotGreater
  82.                 mov max, al
  83.             ifNotGreater:
  84.            
  85.             inc ebx
  86.             pop cx
  87.         loop loopForN
  88.         pop cx ;возвращаем значение счетчика по m
  89.        
  90.         mov al, min
  91.         mov ah, max
  92.            
  93.         cmp cl, m
  94.         je skipFindMin
  95.             cmp al, ah
  96.             jle ifNotGreater2
  97.                 mov min, ah
  98.                 mov al, m
  99.                 sub al, cl
  100.                 inc al
  101.                 mov lineWithMin, al
  102.             ifNotGreater2:
  103.             jmp endFindMin
  104.         skipFindMin:
  105.             mov lineWithMin, 1
  106.             mov min, ah; Кладем максимальный элемент первой строки
  107.         endFindMin:
  108.     loop loopForM
  109.    
  110.     mov al, lineWithMin
  111.     call print_byte_sdec
  112.    
  113.     mov ah, 04Ch       
  114.     int 21h
  115. end start   start: 
  116.     mov ax, @data      
  117.     mov ds, ax
  118.  
  119.     mov cl, [m]
  120.  
  121.     mov ebx, 0 ;счетчик элементов
  122.    
  123.     mov al, [matrix+ebx];инициализируем начальный минимальный элемент
  124.     mov min, al
  125.    
  126.     loopForM:
  127.         push cx ;сохраняем текущее значение счетчика по m
  128.         mov cl, [n] ;counter by n
  129.         mov al, [matrix+ebx]
  130.         mov max, al
  131.        
  132.         loopForN:
  133.             push cx
  134.    
  135.             mov al, [matrix+ebx]
  136.             mov ah, max
  137.             cmp al, ah
  138.             jle ifNotGreater
  139.                 mov max, al
  140.             ifNotGreater:
  141.            
  142.             inc ebx
  143.             pop cx
  144.         loop loopForN
  145.         pop cx ;возвращаем значение счетчика по m
  146.        
  147.         mov al, min
  148.         mov ah, max
  149.            
  150.         cmp cl, m
  151.         je skipFindMin
  152.             cmp al, ah
  153.             jle ifNotGreater2
  154.                 mov min, ah
  155.                 mov al, m
  156.                 sub al, cl
  157.                 inc al
  158.                 mov lineWithMin, al
  159.             ifNotGreater2:
  160.             jmp endFindMin
  161.         skipFindMin:
  162.             mov lineWithMin, 1
  163.             mov min, ah; Кладем максимальный элемент первой строки
  164.         endFindMin:
  165.     loop loopForM
  166.    
  167.     mov al, lineWithMin
  168.     call print_byte_sdec
  169.    
  170.     mov ah, 04Ch       
  171.     int 21h
  172. end start   start: 
  173.     mov ax, @data      
  174.     mov ds, ax
  175.  
  176.     mov cl, [m]
  177.  
  178.     mov ebx, 0 ;счетчик элементов
  179.    
  180.     mov al, [matrix+ebx];инициализируем начальный минимальный элемент
  181.     mov min, al
  182.    
  183.     loopForM:
  184.         push cx ;сохраняем текущее значение счетчика по m
  185.         mov cl, [n] ;counter by n
  186.         mov al, [matrix+ebx]
  187.         mov max, al
  188.        
  189.         loopForN:
  190.             push cx
  191.    
  192.             mov al, [matrix+ebx]
  193.             mov ah, max
  194.             cmp al, ah
  195.             jle ifNotGreater
  196.                 mov max, al
  197.             ifNotGreater:
  198.            
  199.             inc ebx
  200.             pop cx
  201.         loop loopForN
  202.         pop cx ;возвращаем значение счетчика по m
  203.        
  204.         mov al, min
  205.         mov ah, max
  206.            
  207.         cmp cl, m
  208.         je skipFindMin
  209.             cmp al, ah
  210.             jle ifNotGreater2
  211.                 mov min, ah
  212.                 mov al, m
  213.                 sub al, cl
  214.                 inc al
  215.                 mov lineWithMin, al
  216.             ifNotGreater2:
  217.             jmp endFindMin
  218.         skipFindMin:
  219.             mov lineWithMin, 1
  220.             mov min, ah; Кладем максимальный элемент первой строки
  221.         endFindMin:
  222.     loop loopForM
  223.    
  224.     mov al, lineWithMin
  225.     call print_byte_sdec
  226.    
  227.     mov ah, 04Ch       
  228.     int 21h
  229. end start
Add Comment
Please, Sign In to add comment