Пример из §13 Реализация вложенных циклов.

Пример. Проверить, входит ли данное число в матрицу A[m×n]. (Фрагмент программы)
M = 30
N = 20
DATA SEGMENT
      Y_str  DB ‘Yes.’,’$’
      N_str  DB ‘No.’,’$’
      A  DW  M DUP ( N DUP (?))
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS: DATA
MOV AX, DATA
MOV DS, AX
;         *  *  *
; матрица A заполненa
ININT  DX
MOV CX, M
MOV BX, 0			; начало строки матрицы
N_Row: PUSH CX		; сохранение счетчика внешнего цикла
MOV CX, N
MOV SI, 0 		; смещение элемента в строке
N_Elem: CMP DX, A[BX][SI]
JE  YES
ADD SI, TYPE A
LOOP  N_Elem
ADD BX, SI
POP CX			; восстановление счетчика цикла
LOOP N_Row
; элемент  не  найден
MOV DX, offset N_str
JMP SHORT PRN
YES: MOV DX, offset Y_str
PRN: OUTSTR
FINISH
CODE  ENDS