Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 13:40

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 81 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Вс сен 03, 2017 20:46 
Не в сети

Зарегистрирован: Пт янв 06, 2017 14:57
Сообщения: 365
Благодарил (а): 17 раз.
Поблагодарили: 1 раз.
http://www.cyberforum.ru/asm-beginners/thread1429828.html
Спасибо! Там ещё полезны кое-какие комменты, к примеру
Цитата:
format binary as exe

А ещё фраза "Сам себе Iczelion" открыла мои глаза на:
http://www.cyberforum.ru/assembler/thread751124.html
Там и про PE-файлы есть ;)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Вс сен 03, 2017 20:56 
Не в сети

Зарегистрирован: Пт янв 06, 2017 14:57
Сообщения: 365
Благодарил (а): 17 раз.
Поблагодарили: 1 раз.
В дополнении оттуда супер-pdf! (для скачки просто там нужна регистрация)


Вложения:
PE101-v1RU.PDF [530.34 Кб]
Скачиваний: 679
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 01:15 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
_KROL писал(а):
А ещё фраза "Сам себе Iczelion" открыла мои глаза на:
Это творение Mikl-а. Его на том форуме забанили решением администрации. Мы пытались заступиться, но было бесполезно. Впрочем, я сам на том форуме в нарушителях.
Причина - в форум постоянно приходят студиозы и тупо постят условие задачи. Иногда даже без "пожалуйста, помогите". Просто "Дано ... Надо ...". Реакция у нас была такая - или покажи свои наработки, хоть какие-нибудь и тогда поможем или go, фрилянс. go. А политика администрации состояла в том, чтобы таких "педагогов" разогнать и поощрить тех, кто делает задачи за бесплатно и даже без "спасибо". Администрация победила. А Mikl был главным "педагогом".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 09:20 
Им, видите ли, навеяло... http://gudleifr.forum2x2.ru/t35-topic.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 17:47 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
Развернул бы эту свою мысль :
2. Объектно-ориентированное программирование - болезнь, а глядя с высот FORTH - болезнь детская.
А то я никогда даже не писал на ООП и когда говорю похожее на меня смотрят как на троглодита. А поскольку я на ООП и не ООП-ил никогда, то приходится в ответ мычать ибо выстраданных аргументов нет. А не ООП-ил потому-что с какой стороны на это ООП ни смотрел, никак не мог понять в чем тут фишка ? Всегда по впечатлению выходило, что идея какая-то ни о чем.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 18:11 
Ethereal писал(а):
Развернул бы эту свою мысль


Из "заметок":

Я знаю три пути использования ООП:

Первый путь - классический. Представления мира, в котором живет программа, в виде строгой иерархии "объектов". Если один объект является частью другого, считается, что в реальном мире этому соответствует связь "part_of" - "крыло - часть птицы", если же объект наследуется от другого - "is_a" - "аист тоже птица" (и значит, у него тоже есть крылья). По идее, такой подход должен давать возможность программе свободно ориентироваться в сложном мире и писаться на естественном языке.
Но, ловушка здесь в прилагательном "строгая" в первой строке. Допустим, я построил эту самую иерархию и написал нужную мне программу. И тут, как обычно, мне понадобилось ее изменить. Фигушки!
Во-первых, т.к моя иерархия изначально "глубоко продуманная", то как я заставлю себя ее перекроить? Не то, чтобы жалко, но просто мозги так не повернуть, чтоб "систему мира" переделать.
Во-вторых, во всех существующих системах ООП, переделка "мира" вещь практически неосуществимая, вызывающая лавинообразный рост ошибок.
Поэтому первый путь, столь любимый классиками, в дикой природе практически не встречается.

Второй путь - быдлокодерский. Как "современный программист" решает задачу? Он ищет подходящую библиотеку. А для удобства применения сложных библиотек тупыми кодерами, первые естественно снабдить этой самой, описанной выше "иерархией".
"Найти в окне X кнопочку Y и запретить ее нажатие" == X.Y.ЗАПРЕТИТЬ().
"Сделать еще такую же кнопочку, но разместить левее" == Z-КЛАСС УНАСЛЕДОВАТЬ-ОТ Y-КЛАСС; Z-КЛАСС:РИСОВАТЬ()={ПРЕДОК.РИСОВАТЬ(); ПРЕДОК.СДВИНУТЬ-ВЛЕВО();}; Z=НОВЫЙ-ОБЪЕКТ Z-КЛАСС;"
Как-то так...
И многие "соврменные бейсики" этот механизм в себе имеют. Еще один стимул применения подобной схемы: вся привычная визуальная фигня - окошки, рамочки, кнопочки, прокрутки и менюшки - еще в 70-е годы прошлого века была создана объектно-ориентированной. И остается такой по настоящее время.

Третий путь - обфускационный - "чтоб как у людей". Просто группирование разнообразных данных, а, если поднапрячься, и кода, в одном месте. Чтоб было! Как это работает, см. - http://gudleifr.forum2x2.ru/t18-topic. Доходит до смешного - "объектные программисты" утверждают, что правильные отступы в "елочках" (избыточно вложенных вариантах) и "матрешках" (избыточно вложенных циклах) позволяют им понимать программу не читая (!), а только бегло просматривая.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:01 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
А в чем ржач то был ? Там аналогичные решения были :
We are given 5 integer numbers.
Write a program that checks if the sum of some subset of them is 0.
and return true if any subset founded has sum=0 else false
Код:
CREATE DATA 5 , 7 , -2 , -6 , -3 ,

: ZADACA
  ( -- flag )
  0
  32 1 DO
    5 0 DO
      1 I LSHIFT J AND IF
        DATA I CELLS + @ +
      THEN
    LOOP
    0= DUP IF LEAVE THEN
  LOOP
;

ZADACA . BYE
А лучше ничего и не придумывается.


Последний раз редактировалось Ethereal Пн сен 04, 2017 20:14, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:13 
Ethereal писал(а):
А в чем ржач то был ?
В том, что ОО-программист не может прочесть 8 строчек кода, пока не приведет в привычную ему форму - строк на 100.

Ethereal писал(а):
А лучше ничего и не придумывается.
В смысле хуже? Явно видны два огреха - константы 5 и 32 стали независимыми. Структура программы не зависит от задачи. Я, ведь, в BASIC дал подсказку: один и тот же итератор используется трижды.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:17 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
gudleifr писал(а):
Явно видны два огреха - константы 5 и 32 стали независимыми.
Если бы в задаче было "n чисел", но ведь сказано "дано 5". Не надо решать в общем виде, если этого общего вида в задаче не существует. Общий вид, там где он не нужен, только захламляет исходник. Всякие объявления констант не нужные.
gudleifr писал(а):
Структура программы не зависит от задачи.
Она соответствует данной конкретной задаче. Вам шашечки или ехать ?
gudleifr писал(а):
Я, ведь, в BASIC дал подсказку: один и тот же итератор используется трижды.
В примере на Бейсике ПЯТЬ операторов FOR. У меня два DO. Мыслить надо проще.


Последний раз редактировалось Ethereal Пн сен 04, 2017 20:26, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:25 
Ethereal писал(а):
сказано "дано 5".
Но "дано 32" не сказано. Зачем усложнять жизнь читателю?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:28 
Ethereal писал(а):
Вам шашечки или ехать ?
В данном случае Вы пишете "на показ". Но, показывать нечего. Показать правильность Вашего решения можно только решив самому заново.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:32 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
gudleifr писал(а):
Зачем усложнять жизнь читателю?
А читатель - это кто ? Тот, кто хочет спереть твой исходник и выдать за свой ? Тогда зачем облегчать ? Другие читатели мне не встречаются.
И потом, в гробу я видел таких читателей, для кого не очевидно, что 2^5 = 32. Этим ничего не облегчишь.
gudleifr писал(а):
Но, показывать нечего.
С удовольствием посмотрел бы на решение проще. Проще, для меня, это быстрее по скорости или меньше по размеру кода. Другие критерии - это стремление в никому не нужную сторону.


Последний раз редактировалось Ethereal Пн сен 04, 2017 20:46, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:36 
Ethereal писал(а):
В примере на Бейсике ПЯТЬ операторов FOR. У меня два DO. Мыслить надо проще.

Во-первых, не пять, а два!
Во-вторых, Ваша программа работает неправильно - останавливается после нахождения первого нуля и не расшифровывает результат.
В-третьих, "простота" Вашего решения достигнута за счет решения вручную.

Ethereal писал(а):
И потом, в гробу я видел таких читателей, для кого не очевидно, что 2^5 = 32.

Да Вы сами, через месяц будете вспоминать, зачем 2 в пятую степень возводили...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:38 
Не в сети

Зарегистрирован: Пт янв 06, 2017 14:57
Сообщения: 365
Благодарил (а): 17 раз.
Поблагодарили: 1 раз.
gudleifr писал(а):
Да Вы сами, через месяц будете вспоминать, зачем 2 в пятую степень возводили...

Ну, кто как видит ;)
И зачем "грызётесь"? Других дел нет что-ли?
P.s. Олимпиадные задачи можно тоже по разному решать...
P.p.s. Да и к основной теме оно мало относится.


Последний раз редактировалось _KROL Пн сен 04, 2017 20:47, всего редактировалось 3 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Самозапросы на форт-софт
СообщениеДобавлено: Пн сен 04, 2017 20:41 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 600
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
gudleifr писал(а):
Ethereal писал(а):
останавливается после нахождения первого нуля
В условии сказано "любое подмножество". Подмножество из одного элемента подпадает под условие. Про расшифровку результата в условии задачи нет букав. Только про возвращаемый флаг TRUE/FALSE.
gudleifr писал(а):
Да Вы сами, через месяц будете вспоминать, зачем 2 в пятую степень возводили...
Наоборот буду париться зачем
5 CONSTANT N
написал, коли в этом нет никакого смысла.
gudleifr писал(а):
Во-первых, не пять, а два!
А, это во втором варианте "для эстетов". Так там тот-же самый алгоритм (если выкинуть ввод данных и вывод результата), что и у меня - внешний цикл 1..31, внутренний 5 раз со сдвигом единицы и наложением маски.


Последний раз редактировалось Ethereal Пн сен 04, 2017 21:00, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 81 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB