Урок с применением компьютерной презентации “Язык машинных команд” (Приложение 4), которую можно использовать двумя способами: демонстрировать через проектор или просматривать индивидуально на компьютерах школьников.
План урока:
I. Орг. момент.
II. Объяснение нового материала.
III. Домашнее задание
IV. Итог урока.
Ход урока
I. Орг. момент
Приветствие, проверка присутствующих. Проверка готовности учащихся к уроку.
II. Объяснение нового материала
Мы продолжим знакомство с принципами работы компьютера, разработанными ДЖ фон Нейманом.
Давайте с вами вспомним, что называют архитектурой компьютера?
Архитектурой ЭВМ называется описание структуры и принципов работы компьютера без подробностей технической реализации.
Архитектуру какого компьютера мы рассматриваем?
Учебного компьютера Нейман.
Назовите основные характеристики УК Нейман
Назначение УК “НЕЙМАН” Интерфейс с пользователем Размер оперативной памяти Размер машинного слова Представление чисел в памяти Система счисления Языки программирования Структура команд |
арифметические расчеты с целыми
числами ввод с клавиатуры, вывод на дисплей 256 байт 4 байта в форме с фиксированной точкой двоично-шестнадцатеричная язык машинных команд (ЯМК) трехадресная |
Сегодня нам предстоит познакомиться с языком машинных команд и их структурой.
Создатели любой ЭВМ наделяют ее умением выполнять ряд элементарных команд сложения, умножения и т.д. Но арифмометры или, скажем, арифметические калькуляторы тоже способны выполнять эти элементарные операции. Чем же тогда ЭВМ отличается от арифмометра? Главное отличие в том, что ЭВМ можно заставить выполнить без участия человека не только одну команду, но и длинную последовательность команд. В этом и состоит один из основных принципов работы ЭВМ – принцип программного управления.
Программы во время выполнения помещаются в оперативную память компьютера. Каждая команда программы занимает ячейку памяти и имеет свой адрес (адрес ячейки).
Команды управления работой компьютера называют машинными командами.
Машинная команда должна содержать следующую информацию:
- какую операцию выполнить;
- где находятся операнды;
- куда поместить результат операции;
- какую команду выполнять следующей.
Для всякого процессора машинная команда имеет стандартный формат и строго фиксированную длину. Команда состоит из кода операции и адресной части. Код операции определяет действие, которое должен выполнить процессор; адресная часть содержит адреса величин, над которыми должна быть произведена эта операция.
КОП | А1 | А2 | А3 |
КОП – код операции,
А1 – адрес первого операнда,
А2 – адрес второго операнда,
A3 – адрес результата
Пример 1.
КОП | А1 | А2 | А3 |
03 | 20 | 24 | 28 |
03 – код операции умножения;
20 – адрес первого множителя;
24 – адрес второго множителя;
28 – адрес ячейки, в которую будет помещен результат умножения.
Данная команда содержит всю необходимую информацию для ее выполнения. Осталось ответить на последний вопрос: “Какую команду компьютер должен выполнить следующей?”. Для арифметических операций ответ прост “Команду находящуюся в следующей ячейке памяти”.
Таблица 1. Система команд УК “НЕЙМАН”
КОП | Операция | Пояснения |
00 01 02 03 04 05 77 FF |
Пересылка Сложение Вычитание Умножение Деление нацело Получение остатка от деления нацело Останов Пустая команда |
(A1) => A3 (A1) + (A2) => A3 (A1) - (A2) => A3 (A1) x (A2) => A3 (A1) div (A2) => A3 целая часть от деления (A1) mod (A2) => A3 остаток от деления нацело Прекращение выполнения программы При выполнении пропускается |
Запись (A1) + (A2) => A3 надо понимать так: содержимое ячейки с адресом A1 сложить с содержимым ячейки с адресом A2 и результат записать в ячейку A3; (A1) => A3 - содержимое ячейки A1 занести (скопировать) в ячейку A3.
Каждое число, участвующее в расчетах, занимает ячейку памяти. Программист должен сам распределять память под данные. Команды программы тоже занимают память.
Способ представления программы “понятный” процессору ЭВМ называется языком машинных команд
Пусть, например, требуется вычислить выражение: А х С + B.
Нам необходимо определить в каких ячейках памяти компьютера будут помещены величины А, В, С.
(4C)=А, (50)=В, (54)=С.
Результат вычислений поместим в ячейку 58.
Но перед тем как мы составим программу вычисления значения выражения, необходимо определить не только где будут храниться исходные данные А, В, С, но и их значения.
Исходные данные задаются вводом.
Ввод – это занесение данных в оперативную память через устройства ввода.
Устройством ввода на УК “НЕЙМАН” является клавиатура.
Результаты вычислений должны быть выведены.
Вывод – это отражение информации из оперативной памяти на устройствах вывода.
Вывод делает результаты выполнения программы обозримыми для пользователя. Устройством вывода на УК “НЕЙМАН” является дисплей.
Договоримся о следующем способе организации ввода-вывода. С клавиатурой и дисплеем связана последняя ячейка памяти УК “НЕЙМАН” - ячейка FC. Будем называть ее буферной ячейкой ввода-вывода.
При вводе набираемое на клавиатуре значение попадает в ячейку FC. На дисплее постоянно отражается содержимое ячейки FC в шестнадцатеричном виде. Поэтому для вывода значения из любой ячейки памяти его надо переслать в буферную ячейку FC.
В УК “НЕЙМАН” ячейка FC выполняет роль своеобразной видеопамяти. На индикаторе пользователь всегда видит содержимое ячейки FC.
Пример 2.Ввод значения с клавиатуры
КОП | А1 | А2 | А3 |
00 | FC | 4C |
Пример 3.Вывод значения на экран монитора
КОП | А1 | А2 | А3 |
00 | 58 | FC |
Процессор, обнаружив команду, у которой КОП=00 и А1=FC, прерывает работу и ждет действий пользователя. Пользователь набирает на клавиатуре вводимое число. Это число заносится в ячейку FC и, одновременно, высвечивается на дисплее. Затем пользователь нажимает клавишу <ВВОД>. Процессор выполняет команду пересылки из ячейки FC в ячейку 20. Ввод завершился, процессор переходит к выполнению следующей команды.
Занесение значения в ячейку памяти называется присваиванием.
В результате присваивания старое значение, которое хранилось в этой ячейке, стирается и заменяется на новое.
Если ячейке ничего не присвоено, то ее значение является неопределенным.
А теперь составим программу вычисления значения выражения А х С + B.
Адрес | КОП | А1 | А2 | А3 | Пояснения |
00 | 00 | FC | 00 | 4C | Ввод А |
04 | 00 | FC | 00 | 50 | Ввод В |
08 | 00 | FC | 00 | 54 | Ввод С |
0С | 03 | 4С | 50 | 58 | А х В |
10 | 01 | 58 | 54 | 58 | А х В + С |
14 | 00 | 58 | 00 | FC | Вывод результата |
18 | 77 | 00 | 00 | 00 | Стоп |
(Для удобства определения адресов ячеек памяти УК “Нейман”, при составлении программы, можно использовать Приложение 1. Структура памяти “УК Нейман”.)
IV. Д/з
п. 48 учебника, карточки с заданиями Приложение 2.
VI. Итог урока.
Подведение итога урока, повторяются все основные понятия, изученные на уроке. Учитель отвечает на вопросы учащихся.
Для проверки усвоения материала на следующем уроке проводиться проверочная работа Приложение 3.