Skip to content

Instantly share code, notes, and snippets.

@semyonf
Created May 29, 2017 21:50
Show Gist options
  • Save semyonf/cf3a80a4962f5163461e0e4fdf43c58b to your computer and use it in GitHub Desktop.
Save semyonf/cf3a80a4962f5163461e0e4fdf43c58b to your computer and use it in GitHub Desktop.
Исходники кода курсача с программированием на машинных кодах (2 семестр)
Инициализация:
Запись (0x16) в регистр (02), как смещение текущего элемента в RAM на 23 позиции
X"1002_0216"
Запись (0x0) в регистр (03), как номер текущего элемента
X"1003_0300"
Запись (0x4) в регистр (04), как количество элементов всего
X"1004_0404"
Заполнение массива пятью случайными числами [7,4,5,6,8]:
X"1001_0807"
X"3101_0201"
X"1001_0804"
X"3101_0202"
X"1001_0805"
X"3101_0203"
X"1001_0806"
X"3101_0204"
X"1001_0808"
X"3101_0205"
Двигаем смещение на (0x0):
X"1002_0201"
Загрузка в регистр (05) первого элемента массива, как минимального элемента:
X"3005_0200"
Увеличение номера текущего элемента на один:
X"1003_0301"
Увеличение смещения текущего элемента на один:
X"1002_0201"
Загрузка в регистр (06) нового текущего элемента массива:
X"3006_0200"
Проверка текущего элемента на минимальность:
Вычтем из минимального элемента текущий и положим в регистр (01)
X"0101_0506"
Если от АЛУ пришел флаг N, то элемент не минимальный, goto _54_:
X"500A_0001"
Загрузка в регистр (05) текущего элемента массива из регистра (06), как минимального элемента:
X"1005_0600"
Проверка на доступные элементы:
Вычтем из количества элементов номер текущего и положим в регистр (01)
X"0101_0403"
Если от АЛУ не пришел флаг Z, то goto _33_
X"5001_00F8",
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment