КОП |~ Al A2 A3
Каждая часть команды занимает 1 байт. Во всех командах используется прямая адресация памяти: Al, A2, A3 — адреса ячеек ОЗУ. В арифметических командах Al, A2 — адреса операндов, A3 — адрес результата. В команде пересылки А1 — адрес исходного слова, A3 — адрес пересылки. Затем выполняется команда из следующей ячейки. В командах управления A3 — адрес следующей исполняемой команды. 5. Описать систему команд. Согласно принципам Неймана в систему команд процессора должны входить следующие типы команд:
— арифметические и логические команды: выполняют четыре ащШ ствия арифметики и некоторые логические операции; — команды внутренней пересылки данных, позволяют переи^И щать полностью машинные слова или байты из одного места nfl мяти в другое; — команды передачи управления: служат для определения ДОН рядка выполнения команд программы (условные и безусловщН переходы); — команды ввода-вывода: служат для организации обмена дЦН ными между оперативной памятью и внешними устройствами. В табл. 9.3 запись «а» и «$» обозначает адрес ячейки и «адрес*|1 сумматора. Запись «(а)» и «($)» обозначает содержимое ячейки СЯ адресом «а» и содержимое сумматора соответственно; ОП — опе-Щ ративная память. I В табл. 9.4 знак «—» означает, что соответствующие операнды в выполнении команды не участвуют. 6. Привести пример простейшей линейной программы на языке машинных команд учебного компьютера. Пример. Даны значения целых чисел Ь, с, d, e. Составить программу вычисления по формуле: а = b x с — d x е. Решение. Сначала запишем алгоритм на алгоритмическом языке с учетом особенностей систем команд учебных компьютеров (табл. 9.4, 9.5). Программа на ЯМК СМ «Малютка» (все адреса и коды операций даются в шестнадцатеричной системе счисления; память под переменные отводится перед программой) (табл. 9.5).
Программа на ЯМК УК «Нейман» (все адреса и коды опера! ций даются в шестнаддатёричной системе счисления; память под переменные отводится после программы: ячейка с адресом 30 -41 переменная Ь, 34 — с, 38 — d, 3C — е, 40 — а, 44 — г) (табл. 9.6)1 Я 7. Описать структуру процессора учебного компьютера. В состав любого процессора входят три основных составляющих: — АЛУ — арифметико-логическое устройство: блок, выполняющий арифметические и логические команды программы; — УУ — устройство управления: управляет работой компьютера по заданной программе; — регистры процессорной памяти: служат для размещения всей необходимой информации для выполнения очередной команды. Набор регистров и их функции различаются у процессоров разных типов. Однако есть регистры, которые обязательны для любого процессора. Это регистр-счетчик команд (СчК) — хранит адрес очередной выполняемой команды; регистр команд (РК) — хранит код очередной выполняемой команды; регистр-признак результата — позволяет организовывать передачи управления в зависимости от результата вычисления. Используются и другие регистры: сумматоры, регистры общего назначения и пр.; 8. Описать алгоритм работы процессора. В самом общем виде его можно описать так: Начало В СчК поместить адрес первой команды программы В РК занести команду по адресу СчК Пока не команда ОСТАНОВ, повторять Начало цикла занести в СчК адрес следующей команды Выполнить команду из РК В РК занести команду по адресу СчК Конец цикла Конец v* Алгоритм имеет циклическую структуру, поэтому называется циклом работы процессора. Дальнейшее использование учебного компьютера зависит от поставленных педагогических целей. Если ставится задача: дать представление о языке машинных команд, о структуре и работе процессора, то задач более сложных, чем рассмотрена выше, предлагать ученикам не нужно. Программирование на языке машинных команд циклов и ветвлений выходит за рамки этой задачи. Такой подход используется в учебнике [6]. Однако если учебный компьютер используется в углубленном варианте изучения информатики или в профильном курсе программирования, то круг решаемых задач может быть значительно расширен. Практический материал по этой теме приведен в пособии [5].
|