Я предоставлю вам код LMC (Little Man Computer) для реализации алгоритма пузырьковой сортировки с использованием входных значений. Вот код:
ORG 100
LDA N
STA COUNT
LDA N
OUT SUBTWO
STA TEMP
LDA COUNT
LOOP SUBONE
STA COUNT
LDA COUNT
ADDSUB
STA COUNT
LDA TEMP
STO NEXT
LDA COUNT
SUBONE
STA COUNT
LDA COUNT
SUBONE
STA COUNT
LDA COUNT
ADDTEMP
STA COUNT
LDA NEXT
ADDTEMP
STA TEMP
LDA COUNT
ADDONE
STA COUNT
LDA COUNT
STA X
LDA COUNT
ADDONE
STA COUNT
LDA COUNT
STO Y
LDA Y
STO CMP
LDA ARRAY
STO X
LDA CMP
STO Y
LDA X
STO ARRAY
LDA Y
STO X
LDA ARRAY
STO Y
LDA COUNT
SUBONE
BRP LOOP
LDA N
OUT SUBTWO
LDA N
STO TEMP
LDA COUNT
LOOP2 SUBONE
STA COUNT
LDA COUNT
ADDSUB
STA COUNT
LDA TEMP
STO NEXT2
LDA COUNT
SUBONE
STA COUNT
LDA COUNT
SUBONE
STA COUNT
LDA COUNT
ADDTEMP
STA COUNT
LDA NEXT2
ADDTEMP
STA TEMP
LDA COUNT
ADDONE
STA COUNT
LDA COUNT
STA X
LDA COUNT
ADDONE
STA COUNT
LDA COUNT
STO Y
LDA Y
STO CMP
LDA ARRAY
STO X
LDA CMP
STO Y
LDA X
STO ARRAY
LDA Y
STO X
LDA ARRAY
STO Y
LDA COUNT
SUBONE
BRP LOOP2
LDA N
OUT
HLT
ARRAY DAT
N DAT
SUBTWO DAT 2
SUBONE DAT -1
ADDONE DAT 1
ADDSUB DAT -1
ADDTEMP DAT 0
NEXT DAT 0
X DAT 0
Y DAT 0
CMP DAT 0
NEXT2 DAT 0
END
Чтобы запустить этот код, вам необходимо заменить значение Nколичеством элементов, которые вы хотите отсортировать, и указать элементы массива в разделе ARRAY.
Обратите внимание, что LMC представляет собой упрощенную архитектуру образовательного компьютера, и этот код специфичен для этой архитектуры. Он может быть неприменим напрямую к другим языкам программирования или платформам.