Jacynthe
Напишите программу на языке ассемблера для сортировки следующих чисел с помощью пузырьковой сортировки в порядке убывания со
знаком :
-10, -30, -25, 50, 15, 20, 35, 40, 45, 0
То есть в конце вашей программы , цифры должны быть в следующем порядке:
50, 45, 40, 35, 20, 15, 0, -10, -25, -30.
Бо
Делайте свою домашнюю работу самостоятельно.
Перейдите на страницу 37 раздаточного материала CS401, и там вы получите некоторую помощь.
Что касается
инструктора CS401
Wyman
Напишите программу сборки для ввода 3 чисел, затем сложите числа и вычислите среднее округленное значение, распечатайте общее и среднее значение?
Джерад
Данные: Dw -10, -30, -25, 50, 15, 20, 35, 40, 45, 0
swap: Db 0
bubbleort: Dec cx; последний элемент не сравнивается
shl cx, 1
mainloop: Mov si, 0; инициализировать обнулить индекс массива
mov word [swap], 0; оставить поменять местами без перестановки
innerloop: Mov ax, [bx + si]; загрузить номер в ax
cmp ax, [bx + si + 2]; сравнить со следующим номером
jl noswap ; без замены, если уже в порядке
mov dx, [bx + si + 2]; загрузить второй элемент в dx
mov [bx + si], dx; сохранить первый номер во втором
mov [bx + si + 2], ax; сохранить второй numberin first
mov word [swap], 1; признак того, что замена была произведена
noswap: добавить si, 2; перейти к следующему индексу si
cmp si, cx; мы наконец индексируем
jle innerloop; если не cmpare следующие два
слова cmp [swap], 1; проверяем, был ли произведен обмен
jnl mainloop; если да, сделайте еще один проход
ret; вернитесь туда, откуда мы пришли
start: Mov bx, data; отправить начало массива в bx
mov cx, 10; отправить количество элементов в cx
call bubbleort; вызвать нашу подпрограмму