СПО в российских школах

Команда ALT Linux рассказывает о внедрении свободного программного обеспечения в школах России
Декабрь 27, 2013

Лабораторная работа по логическим основам устройства компьютера

Методические материалы
Автор: Владимир Черный

Триггеры, сумматоры, да и просто логические схемы, таблицы истинности… — натуральная головная боль любого преподавателя информатики. Весь урок пропрыгаешь перед доской объясняя, а в головах у учеников практически ничего не остается. К счастью, теперь появился удобный инструмент, как для демонстрации, так и практического закрепления этой темы. Я имею ввиду программу Logisim, которая написана на java и работает «из коробки»1 практически сразу после скачивания с sourceforge.net2. Интерфейс программы русский, если, конечно, у пользователя правильно установлена русская локаль.

Олег Чебан из Алтайского края работает в колледже и использует Logisim на занятиях по «Цифровой схемотехнике», цель которой исследовать и проектировать цифровые схемы (не электрические), для специальности «автоматика». Олег разработал целый цикл лабораторных работ. Вот одна из них, которая дает представление и о возможностях программы Logisim и о способе применения ее в школе или в среднем профессиональном образовании.

Лабораторная работа №9. Построение двоичного сумматора в программе Logisim.

Цель работы:
Изучение правил выполнения арифметических действий над двоичными числами и исследование принципов построения двоичных сумматоров.

Ход работы.
Основным элементом, используемым в двоичных арифметических элементах, является полусумматор. Начнем с так называемой схемы сравнения:
1. Запустите программу Logisim (автор использует ver. 2.7.1)
2. С помощью «Панели инструментов» постройте схему сравнения, см. Рис. 1.

Рис. 1

Рис. 1

3. С помощью «Таблицы атрибутов» задать метки: вход X1 и X2, логические И, ИЛИ и НЕ, выход Y.
4. Проводник — Базовые — Инструмент Текст: Подписать схему, как «Схема сравнения».
5. С помощью инструмента «Изменять значения в схеме» поэкспериментируйте с подачей на входы X1 и X2 логической единицы 1 и логического 0
6. По команде: Проект — Анализировать схему получить Таблицу истинности схемы сравнения, см. Рис. 2.

таблица 1

Рис. 2

Комментарий. Схема сравнения получает младший разряд числа при сложении двух двоичных чисел (бит) без учета переноса! Например: 1 + 1 = 0 младший разряд, перенос 1.

7. С помощью инструмента «Добавить схему» plus добавим схему «Полусумматор», см. Рис. 3.

semi-summator

Рис. 3


Схему сравнения заимствуем с панели проводника >>>menu-summator

8. Проект — Анализировать схему — получить Таблицу истинности полусумматора, см. Рис. 4.

table3

Рис. 4

Комментарий. Схема позволяющая складывать два двоичных числа (бит) называется полусумматором. В нашем случае P – перенос, S – младший разряд, остаток. Однако, при сложении двух двоичных чисел недостаточно использовать полусумматор, т. к. полусумматор не имеет входа для учета переносов из других разрядов.

9. Добавить схему «Сумматор» plus
10. Используя подсхему «Полусумматор» построить «Сумматор», см. Рис. 5.

bynary-summ

Рис. 5


11. По команде: Проект — Анализировать схему получить Таблицу истинности «Сумматора», Рис. 6.
table2

Рис. 6


12. Построим схему из 4-х сумматоров, которые позволят складывать два четырехразрядных числа.
4-times-summator

Рис. 7


Где:

  • X1 и Y1 слагаемые первого сумматора, X2 и Y2 – второго и т. д.
  • S1, S2, S3 .. S5 – младший разряд суммы
  • P1, P2, P3 и P4 – перенос, старший разряд сумматора 1, 2, 3 и 4
  • P0 – всегда равно 0, т. к. в первом сумматоре складываются первые двоичные числа X1 и Y1, переноса нет.

В нашем примере выполняем сложение двух четырехразрядных чисел: 0001 + 0001 = 00010

X4 X3 X2 X1
+ Y4 Y3 Y2 Y1
S5 S4 S3 S2 S1
0 0 0 1
+ 0 0 0 1
0 0 0 0 0

13. Проверить схему при следующих входных данных:

1 0 0 1 Xi
+ 0 0 1 1 Yi
0 1 1 0 0 Si

Самостоятельно. Построить схему позволяющую складывать 8 разрядов двоичных чисел.

Приложение файл программы для Logisim: Сумматор.circ.
———
1Если запускать программу из каталога содержащего jar-файл (например logisim-generic-2.7.1.jar), то строка запуска может выглядеть так:

java -jar ./logisim-generic-2.7.1.jar

2 Пользователи дистрибутивов Альт Линукс могут скачать программу из соответствующего репозитария.

Комментарии (2) к “Лабораторная работа по логическим основам устройства компьютера”

  1. Иван говорит:
    Март 29, 2014, 5:47 пп

    Наверное, лучше вместо контакта P0 поставить константу 0x0, чтобы не было возможности попереключать значение -)

  2. Согласен с константой.
    Наткнулись на программу очень своевременно, если рассматривать в курсе колледж\вуз по «цифровой схемотехники», то возможностей для практикумов предостаточно. Давече моделировали семисегментный индикатор, матрицу 5*7, адресацию памяти.. А главное, навыки работы с микросхемами с одной стороны раскрывает сущность архитектуры ЭВЫМ, с другой — готовит благодатную почву для практического проектирования промышленных контроллеров на языке FBD (функциональных блок схем, стандарт МЭК 61113). Раньше программировали в LogoSoft Comfort от компании Siemens, теперь в российской MasterPCL от Insat
    п.с. возможно ошибаюсь, но из того что видится, сегодня в России образование из авангарда переехало в аръергард и даже то что изучается не отвечает практико-технологическим реалиям

Оставьте комментарий