Данному образовательному сайту пришлось несколько раз менять свое имя. С 2011 года доступ к нему обеспечивается по URL
http://educomp.runnet.ru

emc.km.ru (2001-2007) ==> educomp.org.ru (2007-2011) ==> educomp.runnet.ru (2011-...)
Более подробно об истории сайта можно прочитать здесь.


Учебные модели компьютера



Модели (software):

"Е14" (parallel !!!)
"S9PU" (parallel)

Модели (hardware):






Награды сайта
Награды сайта

"Кроха": описание модели

кроха

Учебная модель ЭВМ "Кроха" была предложена в 1989 году группой екатеринбургских (тогда свердловских) авторов в учебнике "Основы информатики и вычислительной техники". Это была фактически первая модель ЭВМ, предложенная для целей обучения. На ее основе можно было легко и просто объяснить, что такое ячейка памяти, машинная команда, адрес, счетчик команд, сумматор и многие другие фундаментальные понятия.

"Кроха" является классическим примером трехадресной ЭВМ, т.е. в ее команде указывается 3 адреса (операнда): для 2 исходных величин и адрес ячейки, куда нужно записать результат. Общая структура команды имеет вид
КОП  А1   А2   А3 
действиеданныерезультат
Каждая клеточка данного рисунка есть один двоичный разряд.

Память у "Крохи" действительно крошечная - всего 8 ячеек! Поэтому адрес любой ячейки кодируется именно тремя двоичными разрядами (Вы, конечно, помните, что 2 3 = 8). "Для общности" код операции КОП тоже сделан 3-битным. Отсюда автоматически следует, что "Кроха" различает 8 операций. Вот их полный перечень:

КОДНАЗВАНИЕ ОПЕРАЦИИСОДЕРЖАНИЕ ОПЕРАЦИИ
000переписьA1 ==> A3
001сложениеA1 + A2 ==> A3
010делениеA1 / A2 ==> A3
011вычитание|A1 - A2| ==> A3
100условный переход по =при A1 = A2 переход к A3
101умножениеA1 * A2 ==> A3
110условный переход по >при A1 > A2 переход к A3
111вывод и стопвывод A1, A2, A3; стоп.

Как видно из таблицы, помимо 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


Автор сайта - Евгений Александрович Еремин (Пермский государственный педагогический университет). e_eremin@yahoo.com