Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

TTL и CMOS логика Цифровая схемотехника на логических микросхемах. Счетчики, сдвиговые регистры, простая логика...

 
Опции темы

Циклическое отнимание

Непрочитано 12.12.2015, 13:13  
johanh
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.03.2006
Сообщений: 3,609
Сказал спасибо: 141
Сказали Спасибо 427 раз(а) в 377 сообщении(ях)
johanh на пути к лучшему
По умолчанию Re: Циклическое отнимание

NewWriter, А=const названа условно.
Показано для ввода конкретного значения.
Есесно для циклов используются переменные.
...
NewWriter, omercury,
Много переменных (A,C,D,E,Y)
Неизвестно в какой точке повторять цикл.
Неизвестно на какую величину будет изменяться переменная - на единицу или другую величину.
...
Реализаций схемотехнических решений множество
...
Что-то инет глючит ...
Реклама:

Последний раз редактировалось johanh; 12.12.2015 в 13:41.
johanh вне форума  
Сказали "Спасибо" johanh
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 15:03  
johanh
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.03.2006
Сообщений: 3,609
Сказал спасибо: 141
Сказали Спасибо 427 раз(а) в 377 сообщении(ях)
johanh на пути к лучшему
По умолчанию Re: Циклическое отнимание

Сообщение от Andrey_AHAHAC Посмотреть сообщение
А - B = C
C - B = D
D - B = E
E - B = y
А если придраться к форме записи ...
johanh вне форума  
Сказали "Спасибо" johanh
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 17:09  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Циклическое отнимание

Сообщение от johanh Посмотреть сообщение
Неизвестно в какой точке повторять цикл.
Известно, автор ведь и написал, "пока результат вычитания больше, чем B". Это становится понятно, если отталкиваться именно от последовательного вычитания числа B, а не от умножения B на некоторое число раз.
Применительно именно к схемотехнике это будет выглядеть вот так: (вместо дискретных элем. взят готовый сумматор, и предполагается, что в самом начале A›B). Осталось допилить логику управления (сброс, перезапуск)


Схемотехнический реализаций задачи не так уж и много, они все крутятся вокруг одной и той же темы. Вариации будут лишь в разрядности чисел и в управлении переключениями.

А представьте, если умножать. Ну ладно там умножить на 2, на 4, или на 8 - это простые сдвиги влево. А если умножить на 3, на 5, на 6? Ведь аппаратно умножение то выполняется на сдвиговых регистрах и все равно на сумматорах.
Это в программировании записывается легко и просто - 4*В. А вот аппаратно то...
И уж если умножать - то вот тогда действительно неизвестно, на сколько нужно умножить, чтобы соблюсти условие, данное топикстартером

Последний раз редактировалось NewWriter; 12.12.2015 в 17:20.
NewWriter вне форума  
Сказали "Спасибо" NewWriter
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 17:26  
johanh
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.03.2006
Сообщений: 3,609
Сказал спасибо: 141
Сказали Спасибо 427 раз(а) в 377 сообщении(ях)
johanh на пути к лучшему
По умолчанию Re: Циклическое отнимание

NewWriter, Там есть промежуточные значения ...
Это я показал 2 варианта.
...
Надо учесть , что счетчики (регистры) более продвинутые примитивы ...
...
Другая схемотехника ...
..
Если A=const переменными остаются C,D,E,Y
...
От регистров уже рябит в глазах.
johanh вне форума  
Сказали "Спасибо" johanh
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 21:00  
johanh
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.03.2006
Сообщений: 3,609
Сказал спасибо: 141
Сказали Спасибо 427 раз(а) в 377 сообщении(ях)
johanh на пути к лучшему
По умолчанию Re: Циклическое отнимание

A=x
B=z
Y=A-4(3)B
1 if Y =‹ B E=Y+B , D=E+B , C= D+B , (A=C+B), Y , end
Y=Y-B go to 1


Вот другой алгоритм с уменьшением переменной Y на величину B.
Без вывода промежуточного результата.
Другое схемное решение.

Последний раз редактировалось johanh; 12.12.2015 в 21:07.
johanh вне форума  
Сказали "Спасибо" johanh
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 21:55  
Andrey_AHAHAC
Временная регистрация
 
Аватар для Andrey_AHAHAC
 
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
Andrey_AHAHAC на пути к лучшему
Вопрос Re: Циклическое отнимание

Ох вы тут и настрочили.
Сообщение от omercury Посмотреть сообщение
Насколько понял, это делитель.
БИНГО!
Нужна схема деления (предполагается, что остатка не будет)

Схематически задание звучит так:
Нужно поделить два числа (А/В) используя...
Операцию циклического отнимания,
сначала А - В = у, потом у - В = у1, у1 - В = у2... (то есть делитель всегда одинаковый), цикл продолжается, пока результат отнимания не будет меньшим от В.
Итерации цикла подсчитывает COUNTER (счетчик), он же и останавливает цикл (как, я не совсем понимаю), после остановки этот же COUNTER подает на выход результат деления.


п.с. так как у меня были проблемы организацией зацикливания отнимания, я и задал вопрос о нем в начале темы.
п.с.с. на скриншоте примерная схема (рисовал её преподаватель), по которой нужно организовать деление
Миниатюры:
Нажмите на изображение для увеличения
Название: 11.JPG
Просмотров: 40
Размер:	434.5 Кб
ID:	85688  
Andrey_AHAHAC вне форума  
Непрочитано 12.12.2015, 22:04  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Циклическое отнимание

Сообщение от johanh Посмотреть сообщение
Вот другой алгоритм
А теперь думаем, насколько весело мы будем АППАРАТНО реализовывать всё это, и в особенности умножение на 3, если
Сообщение от johanh Посмотреть сообщение
От регистров уже рябит в глазах.
..
Программно выглядит легко, учитывая, что АЛУ требуемой разрядности уже встроен в некий процессор и требуется лишь подавать команды. А вот если топикстартеру необходимо разработать это самое АЛУ, как аппаратное устройство, эт уже совсем другой вопрос...
Так что, зачем выдумывать сложности там, где их нет?

Сообщение от Andrey_AHAHAC Посмотреть сообщение
на скриншоте примерная схема (рисовал её преподаватель),
Ваш препод либо кое-что упустил (позабыл нарисовать или сознательно не нарисовал), либо сам не шибко то рубит в теме (это более вероятно, судя по этому рисунку). Потому как нельзя вернуть в операнд сумматора результат, не применив схемы какой-либо задержки. Просто потому, что число A не может быть одновременно равно результату A-B. .... A≠A-B
PS. присмотревшись к рисунку... я действительно понимаю, что либо препод "слегка не рубит", либо схема неправильно перерисована. Потому что после сумматора выходят данные разрядностью в n бит, а на логическом элементе и тем более на счетном входе счетчика - должен быть 1 бит. И как можно результатом с выхода - тактировать счетчик??? И почему после счетчика - снова разрядность 1 бит выходит????

Сообщение от Andrey_AHAHAC Посмотреть сообщение
он же и останавливает цикл (как, я не совсем понимаю)
Я на схеме показал, как (магнитудный компаратор кода и лог.элемент "И")... там нужно только малость подпилить схему перезапуска вычислений.
На счетном выходе нужно добавить 1 для верного числа вычитаний

Последний раз редактировалось NewWriter; 12.12.2015 в 22:30.
NewWriter вне форума  
Сказали "Спасибо" NewWriter
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 22:08  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Циклическое отнимание

NewWriter, шинами пользоваться не имеете. Пины на шине у вас глобальные.
Easyrider83 вне форума  
Сказали "Спасибо" Easyrider83
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 22:13  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Циклическое отнимание

Сообщение от Easyrider83 Посмотреть сообщение
шинами пользоваться не имеете.
Возможно
NewWriter вне форума  
Сказали "Спасибо" NewWriter
Andrey_AHAHAC (12.12.2015)
Непрочитано 12.12.2015, 22:48  
Andrey_AHAHAC
Временная регистрация
 
Аватар для Andrey_AHAHAC
 
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
Andrey_AHAHAC на пути к лучшему
По умолчанию Re: Циклическое отнимание

Сообщение от NewWriter Посмотреть сообщение
Ваш препод либо кое-что упустил (позабыл нарисовать или сознательно не нарисовал)
Сообщение от NewWriter Посмотреть сообщение
Потому что после сумматора выходят данные разрядностью в n бит, а на логическом элементе и тем более на счетном входе счетчика - должен быть 1 бит.
Этот рисунокНАходу нам давался как подсказка. Безусловно он не дал нормальную(рабочую схему), а всего лишь хотел показать примерный алгоритм решения задачи деления.
Суть этой подсказки я уже описал:
1. Циклическое отнимание.
2. Останавливает цикл и дает ответ деления -- COUNTER.

И задача стоит все это реализовать (в этом и нужна помощь).
Andrey_AHAHAC вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Циклическое чтение 24C512 InTheEnd Микроконтроллеры, АЦП, память и т.д 9 23.03.2011 08:24
[Решено] Плавное циклическое изменение напряжения - как сделать? d-Rat Источники питания и свет 12 21.09.2004 09:33


Часовой пояс GMT +4, время: 08:21.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.