Написать процедуру, которая проверяет, является ли симметричным массив из N слов - Assembler (224511)
Формулировка задачи:
Вот задание для программы:
Написать процедуру, которая проверяет, является ли симметричным массив из N слов. Используя процедуру исследовать два массива и выдать сообщения " симметричен " или "не симметричен". Выполнить это упражнение при условии, что параметр передается процедуре через регистр.Есть через стек:
include io.asm STACK_ SEGMENT STACK DB 100h DUP(?) STACK_ ENDS data segment a dw 1111,2,3,2,1111 b dw 1,2,3,5,7,1 yes db "Симметричен*",10,13,"$" no db "Не симметричен",10,13,"$" data ends code segment assume cs:code,ds:data,ss:stack_ palindr proc near push bp mov bp,sp push bx push cx push si push dx mov ax,1 mov bx,[bp+6] mov cx,[bp+4] mov si,bx mov dx,cx dec dx shl dx,1 mov si,bx add si,dx shr cx,1 comp_ends: mov dx,[bx] cmp dx,[si] je eqq mov ax,0 jmp obloms eqq: add bx,2 sub si,2 loop comp_ends obloms: pop si pop cx pop bx pop dx mov sp,bp pop bp ret; endp palindr start: mov ax,data mov ds,ax lea bx,a push bx mov bx,5 push bx call palindr pop bx pop bx lea dx,yes cmp ax,0 jne yout1 lea dx,no yout1: outstr lea bx,b push bx mov bx,6 push bx call palindr pop bx pop bx lea dx,yes cmp ax,0 jne yout2 lea dx,no yout2: outstr MOV AX, 4C00h INT 21h ;End Program code ends end start
Решение задачи: «Написать процедуру, которая проверяет, является ли симметричным массив из N слов»
textual
Листинг программы
pop si pop cx pop bx pop dx
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д