Данному образовательному сайту пришлось несколько раз менять свое имя. С 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):






Награды сайта
Награды сайта
(из книги автора "Как работает современный компьютер") обзор

Когда в 1985 году в школах вводился новый предмет, ему было дано очень длинное название "Основы информатики и вычислительной техники". Полное название в обиходе, естественно, сократилось до "информатики", но роль основ вычислительной техники в курсе от этого, конечно, уменьшаться не должна. В современных условиях компьютеры играют в обработке информации все большую роль, отсюда понимание того, как устроен компьютер, как он хранит и обрабатывает информацию, становится все более важным компонентом образования.

Тем не менее, на практике изучение основ вычислительной техники затруднено целым рядом обстоятельств. Начнем с чисто эмоционального неприятия этого материала многими людьми: "Чтобы нажимать на нужные кнопки, нам вовсе не обязательно знать, как этот ящик работает!" - заявляют наиболее воинственные пользователи компьютеров. Помимо этого существуют еще объективные трудности: изучать основы ВТ сложно, ибо сама техника все усложняется и изменения происходят с такой скоростью, что содержанию образования необычайно трудно поспеть за ними. Следовательно, нужен тщательный отбор наиболее существенного и фундаментального материала, который "стареет" не так быстро. Нужна и определенная популяризация изложения, чтобы не отпугнуть начинающих.

Один из подходов, позволяющих решить проблему, состоит в рассмотрении некоторой обобщенной модели ЭВМ, "очищенной" от второстепенных технических деталей. Разумеется, для изучения такой модели требуется программная ее реализация, но вследствие простоты самой модели, здесь обычно не возникает особых затруднений. Чтобы предупредить возможные возражения, уместно напомнить, что реальный процессор тоже нельзя изучить без специального программного обеспечения.

Прием, состоящий в объяснении принципов работы ЭВМ на базе учебной модели, возник довольно давно, поэтому кратко ознакомимся с историей вопроса.

Как уже указывалось в предыдущей главе, в первом учебнике информатики, предложенном А.П.Ершовым [1], за основу было взято изучение наиболее подходящего для этой цели реально существующего процессора PDP. Этот же подход, но в значительно меньшем объеме, был сохранен в учебнике [2]. Не замедлило появиться и программное обеспечение в поддержку этого методического направления: на распространенной тогда в педагогических вузах японской ПЭВМ "Yamaha", собранной на базе процессора Z80, получил широкое распространение имитатор PDP [3]. Он мог наглядно показывать содержимое памяти и регистров воображаемого процессора PDP и позволял вводить и отлаживать небольшие программы, написанные на своеобразном "русском ассемблере". В систему команд имитатора были отобраны наиболее важные инструкции, предназначенные для обработки целых чисел. Фактически "Имитатор PDP" представлял собой некоторую учебную модель, но только устройство и поведение этой модели практически полностью соответствовало реальному процессору со всеми его техническими тонкостями. Попутно заметим, что в то время автор пособия также принял активное участие в разработке методики изучения основ вычислительной техники на базе процессора PDP [4,5].

Остальные учебники начали постепенно отходить от описанной линии преподавания. Одна из первых попыток сделана в [6], где предложено рассмотреть работу процессора "на упрощенной модели ЭВМ". Правда, самой этой модели отведено всего четыре странички (с.227-230), но этого вполне достаточно, чтобы увидеть, что это уже не PDP.

Новый шаг от изучения реальной ЭВМ к учебной модели сделан коллективом свердловских авторов [7]. Ими впервые предложена законченная модель учебной ЭВМ. Она носит название "Кроха" и представляет собой классическую трехадресную ЭВМ, соответствующую первому или второму поколению. Благодаря "крошечному" размеру ОЗУ - 8 ячеек, адрес в такой ЭВМ занимает всего 3 бита, а для всей команды, состоящей из кода операции и трех адресов, требуется 12 бит.

"Кроха" умеет работать с целыми положительными 12-разрядными числами от 0 до 4095. Ее система команд состоит всего из 8 операций: перепись, 4 арифметических операции, условные переходы по "равно" и "больше" и, наконец, останов, совмещенный с выводом на экран. Экран дисплея учебной ЭВМ состоит из трех строк, в каждую из которых выводится одно число. Клавиатура у "Крохи" отсутствует, а ввод осуществляется путем прямого редактирования содержимого памяти. Неявно подразумевается, что это делается с некоторого пульта управления аналогично тому, как это было у первых вычислительных машин. Видимо, на этом же пульте находятся и управляющие кнопки "Пуск", "Стоп" и др.

Имеются программные реализации ЭВМ "Кроха" [7,8].

Несмотря на кажущуюся простоту модели, на ней удается показать довольно много. Например, если, не изменяя системы команд, увеличить память до 16 ячеек, то удается даже реализовать простейший демонстрационный компилятор языка Паскаль [9].

Дальнейшее развитие модели учебной ЭВМ предложено в [10]. Разработанный там компьютер "Нейман" тоже имеет трехадресную систему команд, близкую к той, что была у "Крохи". Как и "Кроха", "Нейман" может обрабатывать только целые числа, но зато они могут быть отрицательными: диапазон допустимых значений заметно шире и составляет от - 2 147 483 648 до 2 147 483 647.

Существенным преимуществом "Неймана" перед "Крохой" является больший объем ОЗУ - 256 байт, т.е. 64 32-разрядных слова. Это вполне достаточно для решения большинства реальных школьных задач. Важной особенностью модели также служит наличие специальной ячейки для ввода и вывода данных: через нее осуществляется ввод информации с клавиатуры и вывод на индикатор. Отметим, что такая система обмена информацией с внешними устройствами скорее напоминает работу калькулятора, чем реальной ЭВМ. Кроме того, команды ввода и вывода, входящие в состав системы команд компьютера "Нейман", достаточно условны: они не просто обеспечивают обмен информацией, но и автоматически преобразуют данные из двоичной системы в десятичную и наоборот. Тем не менее, налицо определенное продвижение вперед в моделировании работы внешних устройств по сравнению с "Крохой".

Существенной методической особенностью компьютера "Нейман" является возможность демонстрации нескольких уровней программирования. Первоначально [10] это было программирование в машинных кодах и на языке ассемблер. Позднее авторы добавили возможность использования языка программирования Паскаль (на момент написания этих строк материалы находятся в печати). Интересно, что все три уровня тесно связаны, т.к. применена некогда популярная на машинах семейства "ДВК" технология трансляции с Паскаля в текст на ассемблере и уже из него в машинный код.

Завершая обсуждение существующих моделей учебных ЭВМ, рассмотрим наиболее "свежий" пример. Для школ с углубленным изучением информатики свердловчане предложили еще одну модель - "Малютка" [11]. Она имеет развитую систему из 26 команд, включая дополнительно к рассмотренным выше логические операции, сдвиги и даже выдачу звукового сигнала, "тональность которого определяется содержимым сумматора". "Малютка" - это одноадресная ЭВМ, что является для учебных ЭВМ принципиально новым моментом. В процессоре "Малютки" имеется специальный внутренний регистр - сумматор, в котором выполняются все операции. Именно в сумматор извлекаются данные, и из него результаты записываются в память. Иначе говоря, вся система команд построена на работе с сумматором.

Как и "Нейман", "Малютка" имеет 256 ячеек ОЗУ, только они 12-разрядные. Видимо, это следует признать менее удачным, чем байтовая структура памяти, принятая в "Неймане". Адреса данных, как и у "Неймана", входят непосредственно в состав команд; никаких других способов адресации не предусмотрено.

"Малютка" работает только с числами, но зато они бывают как целые, так и дробные. "Подгоняя" способы хранения данных под свою модель (не находите, что должно быть наоборот?), авторы делают все данные 12-битными. Положение несколько улучшается тем, что сама форма представления целых чисел и чисел с плавающей запятой (дробных) выглядит достаточно правдоподобно.

Заявлена возможность использования звука, но она практически не описана. По имеющимся в тексте учебника скудным данным можно предположить, что вряд ли на примере "Малютки" можно показать реальные принципы работы со звуковой информацией.

При рассмотрении "Малютки" впервые в истории работы с модельными ЭВМ ставится задача об обработке массива данных. Правда способ, предлагаемый для этого, довольно неестественный: программа переформировывает свои собственные команды прямо в ОЗУ. Выбранный метод для "Малютки", конечно, единственно возможный; но слишком уж он далек от того, что используется на самом деле. Да и годится такой подход далеко не всегда: попробуйте, например, применить его для программы, находящейся в ПЗУ, где информацию нельзя изменить!

По поводу внешних устройств ЭВМ "Малютка" в тексте учебника сказано довольно мало. Внимательное чтение позволяет заметить, что для вывода результатов имеется специальное табло, которое дает "возможность сохранять ... много целых значений сумматора в одном из трех форматов - в формате целых чисел, в формате дробных чисел и в двоичном (шестнадцатеричном) формате". О существовании клавиатуры удается догадаться только по наличию специальной команды ввода с клавиатуры; ее действие не описывается и в примерах не обсуждается.

Из методических достоинств описания модели в [11] следует обязательно отметить подробное разъяснение методики написания программы на языке низкого уровня. Реализован также язык ассемблер, а по поводу языков высокого уровня скромно замечено, что их "можно было бы при желании научить ... понимать" и "Малютку".

Таким образом, проанализировав эволюцию имеющихся в литературе учебных ЭВМ, можно обнаружить и достаточно четко проследить их развитие и совершенствование. По-видимому, переход от конкретного процессора к его упрощенной модели является правильным с точки зрения удобства преподавания основ ВТ и в ближайшее время такая методика сохранится. В пользу этого свидетельствует и "вымирание" последних машин семейства "ДВК" (читай PDP!) на российских просторах. Господствующие теперь повсюду процессоры фирмы INTEL как объект изучения достаточно неудобны, что также подтверждает наш выбор в пользу разумной учебной модели.

С другой стороны, существующие ныне модели нуждаются в значительном усовершенствовании: так мало "Нейман" и "Малютка" похожи на современный Pentium!

Поэтому автор, набравшись смелости, предлагает вашему вниманию новую модель учебной ЭВМ - "Е97", также описанную на этом сайте.


ЛИТЕРАТУРА

(знаком back помечены "кнопки" для возврата в то место текст обзора, откуда была ссылка на данный источник; наличие двух кнопок говорит о том, что в тексте имеется 2 ссылки)
  1. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. Ч.2/ А.П.Ершов, В.М.Монахов, А.А.Кузнецов и др. - М.: Просвещение, 1986. - 143 с. back
  2. Кушниренко А.Г., Лебедев Г.В., Сворень Р.А. Основы информатики и вычислительной техники: Проб. учеб. для сред. учеб. заведений. - М.: Просвещение, 1990. -224 с. back
  3. Абрамов П. Имитатор процессора. Информатика и образование, 1986, N 2, c.74-77. back
  4. Еремин Е.А. Программа для изучения принципов работы процессора персональной ЭВМ. Тезисы доклада Всесоюзной конференции. - Омск, 1987. - С.123 -125. back
  5. Еремин Е.А., Пономарева Л.В. Методические рекомендации по изучению основных принципов работы персонального компьютера. - Пермь: ПГПИ, 1989. - 54 с. back
  6. Основы информатики и вычислительной техники: Проб. учеб. пособие для 10-11 кл. сред. шк./ Каймин В.А., Щеголев А.Г., Ерохина Е.А. и др. - М.: Просвещение, 1989. - 272 с. back
  7. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений/ А.Г.Гейн, В.Г.Житомирский, Е.В.Линецкий и др. - Свердловск: Изд-во Урал. ун-та, 1989. - 272 с. back back
  8. Бирих Р.В., Бирих В.М., Еремин Е.А., Еремина Г.П., Люшнин А.В., Чернатынский В.И., Шабуров В.П. Пакет программной поддержки школьного учебника информатики для КУВТ "УКНЦ". Тезисы докладов Республиканской научно-практической конференции. Пермь, 1994, c. 114-115. back
  9. Еремин Е.А. Компилятор? Это очень просто. Компьютер УКНЦ. - М.:Компьютика, 1995, N 3, c.25-33. back
  10. Основы информатики и вычислительной техники в базовой школе: Пособие для учителя/ Под ред. И.Г.Семакина. Пермь, 1995. - 282 с. back back
  11. Сенокосов А.И., Гейн А.Г. Информатика: Учеб. для 8-9 кл. шк. углуб. изуч. информатики. М.: Просвещение, 1995. - 225 с. back back


© Е.А.Еремин, 1997
Из книги:
Еремин Е.А. Как работает современный компьютер. - Пермь: изд-во ПРИПИТ, 1997. 176 с.


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