мойЦУУ (1075389), страница 4
Текст из файла (страница 4)
.
.
.
.
.
.
.
.
.
Программа решения задачи
Проведем распределение оперативной памяти (составим карту памяти). Оперативная память состоит из 16 страниц с номерами 0-F . В каждой странице размещается по 16 слов с номерами 0-F . Все слова однобайтовые. Адресуется каждый байт. Полный адрес байта состоит из адреса страницы и адреса слова в странице. При этом карта памяти имеет вид:
а) страницы 0 - 1 - основная программа;
б) страницы 2 - 3 - подпрограммы;
б) страница A - массив А;
в) страница B - массив В;
г) страница C - массив С;
д) страница D - параметр n, адреса подпрограмм и переходов.
Проведем кодировку машинной программы в шестнадцатеричной системе счисления (табл. 3). Основная программа начинается с адреса 00.
Таблица 3. Машинная программа
| № пп. | Адрес ОП | Код команды | Примечание | |
| Байт 1 | Байт 2 | |||
| Основная программа | ||||
| 1 | 00 | 8F | D0 | POH[F]:=D0 ( адр. пар. n) |
| 2 | 02 | 10 | F0 | Ввод n |
| 3 | 04 | 8E | D1 | POH[E]:=D1 (адр. п/прогр. сдвига) |
| 4 | 06 | 20 | E0 | Вызов п/прогр. сдвига |
| 5 | 08 | 8B | A0 | POH[B]:=A0 (адр. печатаемого мас.) |
| 6 | 0A | 8E | D2 | POH[E]:=D2(адр. п/прогр. печати) |
| 7 | 0C | 20 | E0 | Вызов п/прогр. печати |
| 8 | 0E | 8B | B0 | POH[B]:=B0 (адр. печатаемого мас.) |
| 9 | 10 | 20 | E0 | Вызов п/прогр. печати |
| 10 | 12 | 8B | C0 | POH[B]:=C0 (адр. печатаемого мас.) |
| 11 | 14 | 20 | E0 | Вызов п/прогр. печати |
| 12 | 16 | 00 | 00 | Стоп |
| Подпрограмма сдвига | ||||
| 13 | 20 | 50 | F0 | Установка индекса |
| 14 | 22 | 8D | D3 | POH[D]:=D3 |
| 15 | 24 | 8A | A0 | POH[A]:=A0 |
| 16 | 26 | 8B | B0 | POH[B]:=B0 |
| 17 | 28 | 8C | C0 | POH[C]:=C0 |
| 18 | 2A | 6A | BC | Сдвиг эл–тов с декрементом |
| 19 | 2C | 70 | D0 | Переход условный по ненулевому индексу |
| 20 | 2E | 30 | 00 | Возврат из подпрограммы |
| Подпрограмма печати | ||||
| 21 | 30 | 50 | F0 | Установка индекса |
| 22 | 32 | 8D | D4 | POH[D]:=D4 |
| 23 | 34 | 40 | 0B | Печать эл-та массива с декр. |
| 24 | 36 | 70 | D0 | Переход условный по ненулевому индексу |
| 25 | 38 | 30 | 00 | Возврат из подпрограммы |
Подготовим фотографию оперативной памяти (табл. 4).
Таблица 4. Фотография оперативной памяти.
| Адрес страницы | Адрес слова в странице | |||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
| 0 | 8F | D0 | 10 | F0 | 8E | D1 | 20 | E0 | 8B | A0 | 8E | D2 | 20 | E0 | 8B | B0 |
| 1 | 20 | E0 | 8B | C0 | 20 | E0 | 00 | 00 | ||||||||
| 2 | 50 | F0 | 8D | D3 | 8A | A0 | 8B | B0 | 8C | C0 | 6A | BC | 70 | D0 | 30 | 00 |
| 3 | 8D | D4 | 50 | FO | 40 | 0B | 70 | D0 | 30 | 00 | ||||||
| 4 | ||||||||||||||||
| 5 | ||||||||||||||||
| 6 | ||||||||||||||||
| 7 | ||||||||||||||||
| 8 | ||||||||||||||||
| 9 | ||||||||||||||||
| A | ||||||||||||||||
| B | ||||||||||||||||
| C | ||||||||||||||||
| D | (n) | 20 | 30 | 2A | 34 | |||||||||||
| E | ||||||||||||||||
| F | ||||||||||||||||
Результаты запуска программы говорят о ее работоспособности.












