Задание по сортировке - Assembler
Формулировка задачи:
Есть задание, которое звучит следующим образом:
Отсортировать заданный массив на положительные и отрицательные числа. Длинна массива 100 байт. Адрес исходного массива 5B00:1000H, адрес положительных чисел 5C00:2000H, адрес отрицательных - 6000:3000H.
Код нужен под 8086, заранее благодарен
Решение задачи: «Задание по сортировке»
textual
Листинг программы
.model tiny .code org 100h Start: mov ax,5B00h mov ds,ax mov ax,5C00h mov es,ax mov si,1000h ; исходный (в сегменте ds) mov di,2000h ; положительные (в сегменте es) mov bx,3000h+(6000h-5B00h)*10h ; отрицательные (в сегменте ds) mov cx,100 @@next: lodsb ; al=ds:[si], si=si+1 test al,al jns @@pos mov [bx],al ; орицательное inc bx cmp al,? org $-1 @@pos: stosb ; положительное es:[di]=al, di=di+1 @@cont: loop @@next int 20h end Start
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д