Форум: "Прочее";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];
Вниз"Код" Найти похожие ветки
← →
Делать_нечего (2007-11-08 14:16) [0]Привет. Учусь в школе и меняочень инетерусуют компы. Старась искать кое-какую информацию о них. Тут недавно в ветке рекомендовали книгу "код". Решил почитать, очень заинтересовало. Решил смоделировать логические вентили с помощью проги, и создавать из этих кирпичиков схемы - для примеров из книги и для своих фантазий. Сэмулировал логические вентили как обьекты соответствующих классов, в методах им передается два параметра, соответствубщих входам, и возвращается выход. Смоделировать-то смоделировал, а вот как стыковать их не могу придумать. Может подскжите, может кто занимался таким?
з.ы. прошу не советовать пойти попить пивка. для меня это интересно.
← →
Dib@zol © (2007-11-08 14:19) [1]> з.ы. прошу не советовать пойти попить пивка. для меня это интересно.
А раз интересно пить пивко - то почему бы и не сходить? ;)
И вообще - ШТО ТАКОЕ логические вентили??? 0_о Впрочем, звучит круто)))) Но всё же?
ЗЫ Я вентилями не занимался :D
← →
Сергей М. © (2007-11-08 14:21) [2]
> в методах им передается два параметра, соответствубщих входам
Проиллюстрируй в коде ..
← →
Делать_нечего (2007-11-08 14:22) [3]
> А раз интересно пить пивко - то почему бы и не сходить?
> ;)
Действительно, звучит недвусмысленно, но это читать так - прошу не советовать попить пивка, для меня все вышеописанное интересно.
← →
Сергей М. © (2007-11-08 14:22) [4]
> Dib@zol © (08.11.07 14:19) [1]
> Я вентилями не занимался
Не быть тебе никогда именитым сантехником)
← →
tesseract © (2007-11-08 14:29) [5]
> вот как стыковать их не могу придумать. Может подскжите,
> может кто занимался таким?
Чего стыковать ?
> И вообще - ШТО ТАКОЕ логические вентили
Имеються в виду бинарные операции И, ИЛИ и НЕ - база для цифр.
Вообще есть отличные эмуляторы вроде PCAD - прям с элементной базой
← →
Делать_нечего (2007-11-08 14:33) [6]
> Проиллюстрируй в коде ..
а че тут...public class AND
{
public int Ust(int one, int two)
{
if (one == 1 && two == 1) return 1;
else return 0;
}
}
public class OR
{
public sbyte Ust(sbyte one, sbyte two)
{
if (one == 1 || two == 1) return 1;
else return 0;
}
}
public class AND_NOT
{
public sbyte Ust(sbyte one, sbyte two)
{
if (one == 1 && two == 1) return 0;
else return 1;
}
}
public class OR_NOT
{
public sbyte Ust(sbyte one, sbyte two)
{
if (one == 1 && two == 1) return 0;
else return 1;
}
}
> Чего стыковать ?
ну чтоб выход одного обекта, был входом дргугого..а, погодите, можно же в качестве параметра метода указать обьект, вызывающий свой метод.
← →
Johnmen © (2007-11-08 14:34) [7]
> для примеров из книги и для своих фантазий.
Вы любите фантазии? Могу подкинуть телефончик. И пиво наверняка станет неинтересным. Как и все вышеописанное...
← →
Сергей М. © (2007-11-08 14:34) [8]
> Делать_нечего (08.11.07 14:33) [6]
Поскольку тебе делать нечего, изволь потрудиться портировать всю эту байду в Паскаль.
← →
Делать_нечего (2007-11-08 14:36) [9]
> Сергей М. © (08.11.07 14:34) [8]
>
> > Делать_нечего (08.11.07 14:33) [6]
>
>
> Поскольку тебе делать нечего, изволь потрудиться портировать
> всю эту байду в Паскаль.
А какая разница?
← →
Dib@zol © (2007-11-08 14:37) [10]А что мешает просто написать (not(a or b) xor c)and d ???
Нифжисть не поверю что в сях этого нет.
Тем более - кто тебе сказал что тут кодят на С? Сайт называется ДЕЛФИмастерс :)
Хотя в принципе, структура ясна. Пусть и на Си.
← →
имя (2007-11-08 14:37) [11]Удалено модератором
← →
clickmaker © (2007-11-08 14:38) [12]AND A = new AND;
OR O = new OR;
A.Ust(O.Ust(1, 3), O.Ust(223, 45));
стыкуется?
← →
Делать_нечего (2007-11-08 14:40) [13]
> стыкуется?
стыкуется.
если вы про1 и 3, 223 и 45, ну нет там проверки, да...пока это не важно.
← →
vpbar © (2007-11-08 14:42) [14]>>Делать_нечего (08.11.07 14:36) [9]
Тут не все иностранными языками владеют
← →
Делать_нечего (2007-11-08 14:44) [15]
> Тут не все иностранными языками владеют
Я имел ввиду метод осуществленияреализации, а не реализацию на конуретном языке.
← →
имя (2007-11-08 14:47) [16]Удалено модератором
← →
Romkin © (2007-11-08 14:52) [17]А это у тебя не вентили :)
Если эмулировать - то по полной. Два входа (читай - два метода или свойства), один выход. С выхода надо подавать на вход - сделай присвоение напрямую, т.е. выход - свойство процедурного типа. Ну еще понадобится разветвитель: элемент, у которого один вход, который подается на произвольное количество выходов.
И вентиль должен запоминать свое состояние, сбрасываясь по специальному сигналу (такт). Ты же входы последовательно обходить будешь :)
← →
vpbar © (2007-11-08 14:58) [18]OR.ust(and.ust(1,0),1) а так что? В этом варианте так проще и логичнее всего
← →
Сергей М. © (2007-11-08 15:02) [19]
> как стыковать их не могу придумать
Если речь идет о среде Delphi/BCB то лучше связи на базе TComponent.Owner не придумать.
← →
Делать_нечего (2007-11-08 15:04) [20]
> А это у тебя не вентили :)
> Если эмулировать - то по полной. Два входа (читай - два
> метода или свойства), один выход. С выхода надо подавать
> на вход - сделай присвоение напрямую, т.е. выход - свойство
> процедурного типа. Ну еще понадобится разветвитель: элемент,
> у которого один вход, который подается на произвольное
> количество выходов.
> И вентиль должен запоминать свое состояние, сбрасываясь
> по специальному сигналу (такт). Ты же входы последовательно
> обходить будешь :)
Да, про запоминание состояния я и забыл.
> OR.ust(and.ust(1,0),1)
Так то оно так, но если их (вентилей) будет 20? ну это уже другая история..
> Придурок, реализация...
Даже комментировать не буду.
← →
Сергей М. © (2007-11-08 15:14) [21]
> про запоминание состояния я и забыл.
Нахрен оно нужно ?
Это же не двустабильный элемент а ля триггер, это просто функция)
← →
turbouser © (2007-11-08 15:14) [22]Пятница приближается...
← →
Romkin © (2007-11-08 16:06) [23]
> Это же не двустабильный элемент а ля триггер, это просто
> функция)
Ну синхронизация же нужна? Иначе разброд будет, составить он пяток входов, и будет думать, как на них одновременно сигнал подать :)
← →
Игорь Шевченко © (2007-11-08 17:14) [24]
> Может подскжите, может кто занимался таким?
Я занимался. Но чего надо - не понимаю.
← →
Romkin © (2007-11-08 18:15) [25]Игорь Шевченко © (08.11.07 17:14) [24] Он пытается моделировать работу логических схем.
← →
редкий гость (2007-11-08 18:18) [26]попробуй программу digital works, там практически любую схему можно смоделировать и проверить на работоспособность
← →
Petr V. Abramov © (2007-11-09 00:30) [27]учитывая, что завтра ММП, слово "пивко" вызвало самый живой интерес
по теме
> ну чтоб выход одного обекта, был входом дргугого..
создай класс "входы-выходы", никуда от него не денешься.
приведи интрефейсы классов, и люди сами тебе подскажут реализацию, чуть попинав, в основном по делу :)
← →
Сергей М. © (2007-11-09 09:01) [28]
> Romkin © (08.11.07 16:06) [23]
Не знаю уж, нужна она ему или не нужна, но вентиль это не триггер)
С другой стороны - а нужно ли изобретать велосипед, если в том же Ёхеле задача решается за 5 минут ?
← →
Игорь Шевченко © (2007-11-09 09:35) [29]Romkin © (08.11.07 18:15) [25]
И я про то же. Я собственно собирал приборчик, которых мелкосхемы проверяет, ну и софт к нему писал, сам понимаешь, для эталона надо моделировать, дабы сигналы сравнивать...
← →
DVM © (2007-11-09 10:44) [30]Я где то видел в магазине набор уловно говоря кубиков (типа конструктора для изучения электроники), которые стыкуются друг с другом с помощью контактов и каждый кубик представляет собой какой либо логический элемент. Из них можно собрать рабочую схему за 5 мин. Там были кубики и с табло и с триггерами и прочими шифраторами-дешифраторами.
Вот автору такой надо.
← →
Washington © (2007-11-09 12:58) [31]Удалено модератором
Примечание: Offtopic
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.049 c