Блок схема по коду - Assembler
Формулировка задачи:
Помогите пожалуйста составить блок схему сортировки массива.
.model small .386 .data mas db 6,11,9,8,3,7,8,1,2,6 len equ $-mas tmp db 0 .stack 100h .code start: mov ax,@data mov ds,ax mov cx,len dec cx big: push cx xor si,si cyc: mov al,mas[si] cmp al,mas[si+1] jbe m1 mov bl,mas[si] mov tmp,bl mov bl,mas[si+1] mov mas[si],bl mov bl,tmp mov mas[si+1],bl m1: inc si loop cyc pop cx loop big mov ax,4c00h int 21h end start
Решение задачи: «Блок схема по коду»
textual
Листинг программы
lodsb mov ah,[si] cmp al,ah jbe m1 mov [si]-1,ah mov [si],al m1:
Объяснение кода листинга программы
lodsb
- загрузка байта из памяти в регистр SI.mov ah,[si]
- перемещение значения из регистра SI в регистр AH.cmp al,ah
- сравнение значений в регистрах AL и AH.jbe m1
- переход к метке M1, если значение в регистре AL больше или равно значению в регистре AH.mov [si]-1,ah
- запись значения в регистре AH в память по адресу, содержащемуся в регистре SI, с уменьшением значения в регистре SI на 1.mov [si],al
- запись значения в регистре AL в память по адресу, содержащемуся в регистре SI.m1:
- метка, к которой происходит переход в случае, если значение в регистре AL больше или равно значению в регистре AH.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д