В массиве А(7) поставить максимальный элемент на первое место - Assembler

Узнай цену своей работы

Формулировка задачи:

Есть поиск максимального элемента, но как поставить его на 1-е место не представляю. Помоги пожалуйста
includelib D:\asm\import32.lib
extrn ExitProcess: proc
.386
.model flat,stdcall
.data
x dw 5,2,6,8,4,9,1
n dw 7
max dw ?
.code
begin:
mov eax,0
mov cx,n
lea esi,x
mov eax,0
mov ax,[esi]
m2: cmp ax,[esi]
jge m1
mov ax,[esi]
m1:inc esi
inc esi
loop m2
call ExitProcess
end begin

Решение задачи: «В массиве А(7) поставить максимальный элемент на первое место»

textual
Листинг программы
.model small
.386
 
.stack 100h
 
.data
x dw 5,2,6,8,4,9,1
n dw 7
max dw ?
 
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
 
lea si,x
mov ax,word ptr [si]
mov cx,n
m2: 
cmp ax,word ptr [si]
jge m1
 
mov ax,word ptr [si]
 
mov di,si
 
m1:
add si,2
loop m2
 
push ax
push di
 
sub di,2
lea si,[x+di]
 
pop di
 
push di
 
shr di,1
mov cx,di
 
pop di
 
std
shift:
lodsw
stosw
loop shift
 
pop ax
 
mov word ptr[x],ax
 
mov ah,4Ch
int 21h
end start

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.538 из 5
Похожие ответы