Форум программистов, компьютерный форум, киберфорум
Lazarus
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.70/33: Рейтинг темы: голосов - 33, средняя оценка - 4.70
Заблокирован

Цикл с параметром

11.10.2023, 21:06. Показов 8595. Ответов 108
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если ставится
Pascal
1
2
3
for BFCount := variable1 downto 0 do begin  
...
end;
, то выполнится один раз при BFCount=0. Хорошо, я не против, но тогда мне интересно как далеко в зашли разработчики в этой логике. А именно - проверяется ли условие ещё раз по окончанию цикла, чтобы не джампать в начало. Вопрос чисто по реализации в Lazarus, логике, ассемблеру. Просто я подумал, что раз так, то не стоит удивляться, а нужно проверить это на причины. Ну а с разработчиками я не могу разговаривать, да ещё и по ассемблеру, поэтому решил просто задать вопрос про двойную проверку условия. Просто раз выполнилось на нуле, то какой смысл идти в начало цикла, если можно сразу выйти. Будь я разрабом, то при использовании аппаратной проверке числа (именно ноль), я так и сделал-бы.
Схему прикрепляю. Тут всё не просто и ей конечно нужно описание, но она вполне себе полная. Над описанием я буду работать сегодня-завтра. Это к публикации на хабре по реорганизованным циклам к движку генератора карт трассировок.
Миниатюры
Цикл с параметром  
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.10.2023, 21:06
Ответы с готовыми решениями:

Цикл с параметром
Если в процессе цикла содержимое списка (List) не изменяется, то я бы рекомендовал инвариантное вычисление (List.Count-1) вынести за...

цикл с параметром for
1)Составить таблицу перевода суток (от 1 до 7) в часы, минуты, секунды.

Цикл с параметром
Приветствую всех!!! Дали много заданий...вот одно из них!помогите"......Нужно вычислить A(A+1)(A+2)...(A+T), для A и T введенных с...

108
3139 / 1740 / 274
Регистрация: 19.02.2010
Сообщений: 4,543
18.10.2023, 10:26
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от AzAtom Посмотреть сообщение
Вместо того, чтобы просто взять и посмотреть, во что компилируется цикл.
Оптимизация включалась в настройках проекта?
А то компилятор выдал какую-то неприлично лютую порнографию.
1
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
18.10.2023, 11:25
VTsaregorodtsev, ничего не менял после установки lazarus. Уровень оптимизации: 1 (быстро и с небольшими ограничениями)

Добавлено через 7 минут
Да, с оптимизацией 2 уровня стало заметно лучше.
0
Заблокирован
18.10.2023, 20:07  [ТС]
Цитата Сообщение от AzAtom Посмотреть сообщение
А что, если не рассуждения? Вместо того, чтобы просто взять и посмотреть, во что компилируется цикл.
зачем, если это известно и так из его описания и описания его работы?
Я знаю во что он компилируется. Но мало-ли, откуда мне известно какие есть режимы компиляции, как кто использует эти циклы.
Вроде как-бы раздел для вопросов, а получается так что вопросы задавать нельзя.

Цитата Сообщение от Usaga Посмотреть сообщение
Если, как ты говоришь, у тебя нет времени, то смысл вообще всей этой темы?
а почему тебе можно задавать любые вопросы, а мне даже по теме нельзя?
Тебя это не смущает?
Я объяснил как смог пока на схеме, как я буду использовать цикл и какая мне его работа нужна, откуда мне знать какие режимы компиляции и использования цикла есть с парметром. Может это уже реализовано. А то получается обгадить можно даже без причины любой вопрос (10 раз назвать автора дураком, наркоманом, алкашом, заподозрить ещё чего-нибудь - это всё можно), а спросить и нельзя ничего. Я объяснил какая мне нужна компиляция цикла с параметром, почему мне запрещено думать что это уже реализовано в режиме компиляции?
0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
18.10.2023, 20:28
Цитата Сообщение от Hretgir Посмотреть сообщение
зачем, если это известно и так из его описания и описания его работы?
Цитата Сообщение от Hretgir Посмотреть сообщение
Вроде как-бы раздел для вопросов, а получается так что вопросы задавать нельзя.
Конечно можно. Задавай. Лично я буду теперь считать, что ты уже знаешь ответы на вопросы, которые задаёшь.
0
Заблокирован
18.10.2023, 21:41  [ТС]
Цитата Сообщение от AzAtom Посмотреть сообщение
Конечно можно. Задавай. Лично я буду теперь считать, что ты уже знаешь ответы на вопросы, которые задаёшь.
Не все варианты (незакрытым оставался вопрос режимоа компиляции или каких-то настроек цикла с параметром). О тех вариантах, которых я могу догадываться - можно соответственно догадаться, если есть сомнения - уточнить, в угадайку я и не предлаю играть. Как насчёт варианта ответа, что то что мне нужно - не реализовано никак? Или тогда что-то идёт вразрез с правилами чего-то не всем открытого? Это нормальное явление - сообщества бывают открытые, так и закрытые, только не надо это превращать в маразм (флейм) в пользу необоснованных каких-то просоциалистических настроений. Я понимаю, что в социуме всё имеет место быть, но на всё нужно разумное основание. Так что то, что вы собрались считать - не совсем разумно, так как остаются варианты. Кто не согласен с требованием точности - может создавать своё открытое сообщество, только я в него не вхож, прошу учесть это. Может мои схемы не совсем точно всё визуализируют, но я и над правилами визуализации данной схемы уже поработал сегодня, и исправил.
А Вы в это время успешно проигнорировали следующее
Цитата Сообщение от Hretgir Посмотреть сообщение
Я объяснил какая мне нужна компиляция цикла с параметром, почему мне запрещено думать что это уже реализовано в режиме компиляции?
.

Не по теме:

Я не противник социализма, я сторонник разумного подхода .

0
Эксперт .NET
 Аватар для Usaga
14778 / 9552 / 1366
Регистрация: 21.01.2016
Сообщений: 36,018
19.10.2023, 08:09
Цитата Сообщение от Hretgir Посмотреть сообщение
а почему тебе можно задавать любые вопросы, а мне даже по теме нельзя?
Тебя это не смущает?
Тебе никто ничего не запрещает) Я просто спрашиваю зачем ты задаёшь вопрос, ответ на который, по сути, тебе не нужен, ибо у тебя нет времени на использование этого ответа. Более того: даже вопрос не имеет смысла, ибо ты мог просто посмотреть на ассемблерный код, что быстрее, чем рисовать графики и набирать текст вопроса на форуме...

Т.е. даже тут твой тезис о нехватки времени разбивается о портянки диаграмм, на которые время-то есть)
0
Заблокирован
19.10.2023, 22:13  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Я просто спрашиваю зачем ты задаёшь вопрос, ответ на который, по сути, тебе не нужен
мне нужно точно знать, что, на момент вопроса, других вариантов нет.
Всё остальное там у тебя ниже - ради флейма.
У меня есть свой вариант применения цикла с параметром, поэтому я спрашиваю о его существовании, а не того, что общеизвестно. То что общеизвестно - мне уже известно.
0
Эксперт .NET
 Аватар для Usaga
14778 / 9552 / 1366
Регистрация: 21.01.2016
Сообщений: 36,018
26.10.2023, 05:58
Цитата Сообщение от Hretgir Посмотреть сообщение
поэтому я спрашиваю о его существовании, а не того, что общеизвестно.
Т.е. ты спрашиваешь о том, чего никто знать не может, ибо оно не общеизвестно?
0
26.10.2023, 06:19

Не по теме:

Цитата Сообщение от Usaga Посмотреть сообщение
ты спрашиваешь о том, чего никто знать не может
...исхитрись ка мне добыть
то, чаво не может быть...

0
Заблокирован
26.10.2023, 22:01  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Т.е. ты спрашиваешь о том, чего никто знать не может, ибо оно не общеизвестно?
я спрашиваю о том, что мне нужно, спрашиваю чтобы узнать есть оно или нет.
Цитата Сообщение от D1973 Посмотреть сообщение
...исхитрись ка мне добыть
то, чаво не может быть...
только вчера закончил публикацию, спасибо за подсказку, помимо текста, по моменту, приложу псевдокод. Публиковать не спешу. Да и схема давно доработана, но я понимаю так, что она тут не нужна, раз быть не может. Быть не может, но у меня - есть, если нету - будет.

Интересно как-то, на Хабре в черновике, а 5 просмотров. Мои что-ли просмотры считает? Через недельку опубликую. Пока не спешу.
Псевдокод, но нужна такая компиляция на ассемблере, с аппаратной проверкой на флаг Zero при проверке условия.
Pascal
1
2
3
4
5
6
7
8
9
count:=myVariable;
if Not (count = 0) Then begin
label1:
...;
...;
...;
dec(count);//or inc (count) , then count:=-5
if Not (count = 0) then goto label1;
end;
0
Эксперт .NET
 Аватар для Usaga
14778 / 9552 / 1366
Регистрация: 21.01.2016
Сообщений: 36,018
27.10.2023, 15:10
Цитата Сообщение от Hretgir Посмотреть сообщение
я спрашиваю о том, что мне нужно, спрашиваю чтобы узнать есть оно или нет.
Исходя из твоей формулировки получается, что ты спрашиваешь то, чего никто знать не может. Это с твоих же слов.
0
Заблокирован
27.10.2023, 20:27  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Исходя из твоей формулировки получается, что ты спрашиваешь то, чего никто знать не может.
цикл с параметром ещё не придумали?
Может мы просто в разном времени или параллельных вселенных?
Ладно, я не знаю с какой ты там планеты или вселенной, но мне кажется, что цикл с параметром вещь вполне известная. Мне нужен вариант его компиляции. Всего навсего. Его и испрашиваю. Формулировка была в теме мной мной сделана одна : цикл с параметром - цикл, число повторений которого заранее известно. Испрашивается вариант компиляции.
Цитата Сообщение от D1973 Посмотреть сообщение
...исхитрись ка мне добыть
то, чаво не может быть...
Цитата Сообщение от Usaga Посмотреть сообщение
ты спрашиваешь то, чего никто знать не может.
а это ваше личное, или с параллельной вселенной какой-то. Вам решать где вы. Мне всё равно. Можете там оставаться навсегда.

Добавлено через 22 минуты
И судя по всему этот код не компилируется так, как мне надо
/home/andrei/Documents/DebianCopy/MyLazarus/generator_0-135_deg66/unit1.pas:92 if Not (stepFrequent = 0) Then stepFrequent := round(CaTanDeg);
0000000000464A63 488B45E8 mov rax,[rbp-$18]
0000000000464A67 83789C00 cmp dword ptr [rax-$64],$00
0000000000464A6B 7418 jz +$18
0000000000464A6D 488B45E8 mov rax,[rbp-$18]
0000000000464A71 DBA8E0FEFFFF fld tbyte ptr [rax-$00000120]
я тут ничего не увидел, чтобы использовалась аппаратная проверка через флаг Zero.
Так как
jz: выполняет переход к метке, если флаг нуля установлен
Ну я и не знаток, если что....Хотя
0000000000464A6B 7418 jz +$18
.
Что-то есть, но мне нужно точно знать, что это то, что я спрашиваю.
0
Эксперт .NET
 Аватар для Usaga
14778 / 9552 / 1366
Регистрация: 21.01.2016
Сообщений: 36,018
28.10.2023, 11:13
Цитата Сообщение от Hretgir Посмотреть сообщение
Может мы просто в разном времени или параллельных вселенных?
На самом деле да: мы действительно с тобой в разных вселенных живём. Т.е. прямо буквально. Оттуда и недопонимание. Программирование для тебя - хобби. И проблемы, которые ты решаешь - они одному тебе известны. Поэтому тебе тут ничего для тебя интересного ответить не могут.
1
Заблокирован
28.10.2023, 19:37  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
На самом деле да: мы действительно с тобой в разных вселенных живём. Т.е. прямо буквально. Оттуда и недопонимание. Программирование для тебя - хобби. И проблемы, которые ты решаешь - они одному тебе известны. Поэтому тебе тут ничего для тебя интересного ответить не могут.
то-есть специалисты не знакомы с языками программирования и терминологией? Это действиетельно параллельная вселенная, где специалисты знают наверное всё-же много, но только не по своей специальности?
Я вот например с своей специальностью нормально справляюсь.
Если мне скажут что плохо - я уйду сам и никого учить не стану. А у вас как? То что вы учите - совершенно очевидно, трудно понять как вам это удаётся при незнании даже терминологии.
То что в вашей вселенной корочка решает всё, а не знание - я это уже понял. Но остаётся куча ньюансов насчёт вашего социума. Чем вы питаетесь, кто вам платит например, как устроен ваш бизнес. Всё это очень интересно.

Не по теме:

Раз уж чудом мы оказались на одном форуме, из разных вселенных - какой вы формы жизни и что вы принимаете в пищу?

0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
28.10.2023, 21:21
Установку и проверку флагов уже обсуждали в теме от ТС Осуществление установки флага Zero , нет смысла повторяться.
0
Заблокирован
28.10.2023, 22:18  [ТС]
Цитата Сообщение от AzAtom Посмотреть сообщение
Установку и проверку флагов уже обсуждали в теме от ТС Осуществление установки флага Zero , нет смысла повторяться.
я не повтроряюсь, в этой теме меня интересует компиляция и исполнение кода.
Цикл с параметром
Я понимаю, что все вы сильно заняты очень важными делами, но мне кажется, что тогда это не должно обязывать вас отвечать на то, что вы не читаете.
0
Заблокирован
29.10.2023, 05:23  [ТС]
Тема про цикл с параметром и его и компиляции, а не про архитектуру процессора и установке флага Zero. Я заранее протестую против объединения тем. Если это не важно, то выходит что программировании вообще нет ничего такого важного, чтобы сказать человеку что он любитель, и не заметить тонкий переход одного участника на личности, ну или проигнорировать переход.
Кинул жалобу за переход на личности на участника Usaga. Я там ему задал вопросы сразу о его сообществе, а не о нём лично. Хотя если кто то посчитает его божеством, а форум кинет на алтарь личных амбиций, то может это проигнорировать.
0
Модератор
10477 / 5772 / 3412
Регистрация: 17.08.2012
Сообщений: 17,533
29.10.2023, 19:45
Hretgir, ??? Я снова не понимаю Ваших действий.

Вы тут в одной из тем писали, что используете автоматное программирование, и мы все поймём свою неправоту, когда Вы наконец допишете Вашу программу... А почему Вы это самое автоматное программирование не используете? Поэтому вопрос: Вы уверены в Ваших знаниях настолько, что допускаете, что Вы знаете больше, чем мы?

И так, навскидку: а сколько ассемблеров Вы знаете? При чём ассемблеры? А при том, что других ЭВМ, кроме уже созданных, попросту нет. И писать программы приходится именно для этих ЭВМ.

Попытка помочь.

Мне Ваша задача до сих пор так и не изваестна. Она что, секретная? У меня есть стойкая уверенность, что Ваш подход к решению Вашей задачи далеко не оптимален.

Может быть, озвучите Вашу изначальную задачу?
1
Заблокирован
29.10.2023, 19:50  [ТС]
Цитата Сообщение от Cyborg Drone Посмотреть сообщение
Вы уверены в Ваших знаниях настолько, что допускаете, что Вы знаете больше, чем мы?
если-бы я был хоть чуть уверен в своих знаниях - я никогда не задал бы тут ни одного вопроса и вообще никогда не зарегистрировался бы на этом форуме.
Цитата Сообщение от Cyborg Drone Посмотреть сообщение
Мне Ваша задача до сих пор так и не изваестна. Она что, секретная?
Я её озвучил. Мне нужен цикл с параметром с проверкой флага Zero. В том виде в котором он мне нужен я написал его так
Цитата Сообщение от Hretgir Посмотреть сообщение
count:=myVariable;
if Not (count = 0) Then begin
label1:
...;
...;
...;
dec(count);
if Not (count = 0) then goto label1;
end;
тут
Цикл с параметром
меня интересует чтобы проверка на ноль была аппаратной в строках этого кода.
Мне нужно быть увереным в том, что она именно такая.
Тему раскрывал постепенно, так как был занят основной работой и схемой. Сейчас предмет раскрыт полностью.
0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
29.10.2023, 21:02
Цитата Сообщение от Hretgir Посмотреть сообщение
Мне нужно быть увереным в том, что она именно такая.
На "железном" процессоре она не может быть иной. При получении команды jz переход по адресу происходит тогда, когда установлен флаг Z. Это делается аппаратно и никак иначе.

Добавлено через 1 минуту
Вообще, все команды на железном процессоре выполняются аппаратно.
И в цикле for точно так же используется эта команда.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.10.2023, 21:02

Задача на цикл с параметром.Массивы
оч срочно,,,,, помогите , задача:6. Дана последовательность целых чисел a1, a2, ..., an. Упорядочить эту таблицу. Добавлено через 28...

Цикл с параметром: вычислить значение функции
F(k)=cos|2k|/1,12-cos⁡(3k-2)+6,15

Задание. Цикл с параметром. Нужна подсказка
Есть задание. А Я никак не пойму как его делать и что требуется. Если не лень подскажите. Я не прошу сделать его вместо меня, я прошу...

Цикл с параметром: определить, сколько чисел из последовательности принимает максимальное значение
Добрый день. Помогите пожалуйста с программой. Нужно составить программу используя цикл с параметром. Задана последовательность из n...

Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием...
Найти сумму чисел 1 в квадрате до 10 c квадрате...операцию возведению в степень не использовать учесть особенности получения квадратного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Закрытая тема Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru