TTL и CMOS логика Цифровая схемотехника на логических микросхемах. Счетчики, сдвиговые регистры, простая логика... |
18.10.2015, 14:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 24.03.2007
Сообщений: 1,365
Сказал спасибо: 85
Сказали Спасибо 625 раз(а) в 377 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от Andrey_AHAHAC
|
Звучит все устрашающе непонятно.
|
Дык это ж деление. С умножением все гораздо проще, со сложением - еще проще.
Оптимальный вариант для рисования схемы - ПЗУ. Рисуется просто, квадратом
Хотя, в таком случае, всю эту схему можно заменить на одно ПЗУ подходящего размера.
|
|
|
|
18.10.2015, 14:30
|
|
Временная регистрация
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от pambaru
|
Если все же нужно асинхронно, на логике, без ПЗУ, то расписать все состояния вход-выход в таблице, минимизировать по картам Карно, к примеру (Гугл в помощь), и нарисовать результат на логике на формате листа А0
|
Вот так выглядит матрица деления в книге:
|
|
|
|
18.10.2015, 14:34
|
|
Временная регистрация
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от Andrey_AHAHAC
|
Вот так выглядит матрица деления в книге:
|
В итоге выйдет A/B = Q + R/B
Насколько это рациональный способ деления?
|
|
|
|
18.10.2015, 14:56
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.01.2007
Сообщений: 3,123
Сказал спасибо: 61
Сказали Спасибо 1,153 раз(а) в 624 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от Andrey_AHAHAC
|
Насколько это рациональный способ деления?
|
А что значит рациональный? Кстати, а что за курс (предмет)?
|
|
|
|
18.10.2015, 15:08
|
|
Временная регистрация
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от avp94
|
А что значит рациональный? Кстати, а что за курс (предмет)?
|
Я имею введу, что прицепи эта схема не выглядит сложной, просто громоздкая. Мне кажется что ее легче будет реализовать ибо не совсем понимаю ваши советы. Мб я просто туплю, вот и спрашиваю.
п.с. предмет -- цифровая схемотехника. А вообще я учусь на программиста С++.
|
|
|
|
18.10.2015, 15:18
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: Собрать АЛУ
Ну деление в "цифровой схемотехнике" выполняется точно так же, как деление в 5 классе столбиком. Схемно это будет выглядеть как регистры сдвига и сумматоры, плюс схема управления - мультиплексоры, перенаправляющие потоки данных с шин регистров и сумматоров.
Да, сложно и громоздко. Ну а как ты думал? В АЛУ процессора так же громоздко и построена эта схема аппаратного деления. Ну или если нет аппаратного, то делается программно почти так же.
|
|
|
|
18.10.2015, 15:53
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.01.2007
Сообщений: 3,123
Сказал спасибо: 61
Сказали Спасибо 1,153 раз(а) в 624 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от Andrey_AHAHAC
|
п.с. предмет -- цифровая схемотехника.
|
Тогда берите схему деления из книги, будем надеяться, что она рабочая , во всяком случае одна (основная) ячейка работает правильно.
По поводу схемы поста №1:
- в схемотехнике нельзя оставлять "висячие" входы - это скорее 1 чем 0 (про входы переносов)
-выходы переносов соединить со входами переносов
-схему "дополнения до двух" выполнить на отдельном сумматоре, выход его переноса не подключать
- выход последнего переноса объявить сигналом об ошибке (переполнения).
На первый взгляд все .
P.S. В схеме делителя не забыть дешифрировать деление на ноль и вывести ошибку .
Последний раз редактировалось avp94; 18.10.2015 в 16:04.
|
|
|
|
18.10.2015, 17:50
|
|
Временная регистрация
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от avp94
|
-схему "дополнения до двух" выполнить на отдельном сумматоре, выход его переноса не подключать
|
дополнение до двух?
|
|
|
|
18.10.2015, 18:02
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: Собрать АЛУ
да да, дополнения до двух. Не до трех, а только до двух.
Это дополнительный код. Он для представления отрицательных чисел придуман. И позволяет легко заменять операцию выичтания операцией сложения.
+1 в доп коде = 00000001
0 в доп коде = 00000000
-1 в доп коде = 11111111, а не 11111110, как в обратном (инверсном) или 10000001 в прямом.
Доп код получается из обратного простым прибавлением 1. То есть, чтобы сделать отрицательное число, нужно проинвертировать код числа и +1 к нему.
То есть, чтобы 00000011 (3) - 00000001 (1), можно сделать 00000011 (3) + 11111111 (-1), и будет = 0000010 (2)
Последний раз редактировалось NewWriter; 18.10.2015 в 18:24.
|
|
|
|
18.10.2015, 18:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.01.2007
Сообщений: 3,123
Сказал спасибо: 61
Сказали Спасибо 1,153 раз(а) в 624 сообщении(ях)
|
Re: Собрать АЛУ
Сообщение от Andrey_AHAHAC
|
дополнение до двух?
|
А как вычитаете на сумматоре? Инверсия плюс 1 - так называется, кавычки на че ?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:59.
|
|