Данному образовательному сайту пришлось несколько раз менять свое имя. С 2022 года доступ к нему обеспечивается по URL
emc.km.ru (2001-2007) ==> educomp.org.ru (2007-2011) ==> educomp.runnet.ru (2011-2021) ==> emc.orgfree.com (2022-...)
Более подробно об истории сайта можно прочитать здесь.
|
"Кроха": описание модели
Учебная модель ЭВМ "Кроха" была предложена в 1989 году группой екатеринбургских (тогда свердловских) авторов в учебнике "Основы информатики и вычислительной техники". Это была фактически первая модель ЭВМ, предложенная для целей обучения. На ее основе можно было легко и просто объяснить, что такое ячейка памяти, машинная команда, адрес, счетчик команд, сумматор и многие другие фундаментальные понятия. "Кроха" является классическим примером трехадресной ЭВМ, т.е. в ее команде указывается 3 адреса (операнда): для 2 исходных величин и адрес ячейки, куда нужно записать результат. Общая структура команды имеет вид
Память у "Крохи" действительно крошечная - всего 8 ячеек! Поэтому адрес любой ячейки кодируется именно тремя двоичными разрядами (Вы, конечно, помните, что 2 3 = 8). "Для общности" код операции КОП тоже сделан 3-битным. Отсюда автоматически следует, что "Кроха" различает 8 операций. Вот их полный перечень:
Как видно из таблицы, помимо 4 арифметических действий над числами (расположенных в таблице операций несколько бессистемно), "Кроха" способна вывести все 3 указанных адреса на экран и, кроме того, осуществить 2 разновидности условного перехода. Учебная ЭВМ оперирует с целыми положительными числами. Как и команды, числа 12-разрядные. Очевидно, что максимальное число, которое еще способна разместить в своей памяти "Кроха", равняется 2 12 - 1 = 4095. В случае, когда результат получается больше, он выходит за 12-разрядное машинное слово и не может быть корректно сохранен. Специалисты называют такое явление переполнением. Переполнение является аварийной ситуацией и приводит к прекращению выполнения программы. Поскольку все числа в "Крохе" должны быть целыми, деление всегда производится нацело и остаток просто отбрасывается. Например, при делении 14 на 3 получается 4, а 3 на 15 - ноль. Кстати, деление на ноль невозможно, что также является причиной аварийной остановки ЭВМ. Аналогично чтобы результат при вычитании не стал отрицательным, "Кроха" корректирует его путем взятия модуля. Например, в результате операции 3 - 5 получается число +2. При переписи информация из ячейки с адресом А1 копируется в ячейку А3. Адрес А2 при этом не имеет значения; его принято заполнять нулями.
При осуществлении условного перехода "Кроха" сравнивает между собой оба операнда и в случае выполнения условия (равно или больше, в зависимости от КОП) переходит к А3: проще говоря, следующей командой будет выполняться А3. В случае невыполнения условия (например, по неравенству в первом случае) переход игнорируется и выполняется следующая команда программы. Запомните, пожалуйста, эту логику: именно она лежит в основе всех разветвлений и циклов! Все современные реальные компьютеры работают по такой логике. Подробные примеры программ для ЭВМ "Кроха" приведены на отдельной странице. Здесь только заметим, что "Кроха" всегда начинает выполнение программы с нулевого адреса. © Модель "Кроха" - А.Г.Гейн и др., 1989 © Описание модели и оформление Web-страницы Е.А.Еремин, 2002 |