Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2020-05-03 22:43:40 ЛС | профиль | цитата
Nic писал(а):
некропостинг

А вот иногда бывает интересно узнать, чем народ занимался в мое отсутствие.
Должен отметить, что порой -- просто ОХРЕНЕВАЕШЬ

Все прокачались, и запустились... Скопировали и выложили на форум.
Это называется - работать руками. А что, работать головой на форуме никто не умеет

Блин, ведь вот этот хинт вы все видели:

Подготовка к сборке проекта...
Генерация кода целевого языка
Компоновка проекта...
Command line: dcc32.exe "D:\Programs\HiAsm\Elements\delphi\code\cputest2.dpr" "-UD:\Programs\HiAsm\temp\." -Q -GD
Borland Delphi Version 12.0 Copyright (c) 1983,98 Inprise Corporation

D:\Programs\HiAsm\Elements\delphi\code\hiInlineCode_4C297C0.pas(35) Hint: Value assigned to 'r' never used
77904 lines, 0.33 seconds, 69960 bytes code, 2401 bytes data.
Сборка завершена.
И нифига - гробовое молчание.

Какая может быть уверенность (после этого хинта), что в теле цикла:

  for i := 0 to 2000000000 do
r := 200*k / p;
-- вообще стоит какой-то код.
Правильный ответ: НИКАКОЙ.
Какая может быть уверенность, что цикл, внутри которого ничего не делается - вообще закодирован.
Что он вообще есть.
Ответ тот же. Все зависит от оптимизирующих способностей компилятора.

Так время чего вы все трудолюбиво измеряли, спрашивается...
Между прочим, цикл-то остался (из 2-х команд проца), но - абсолютно пустой. Примерно так:

     mov eax, 2000000000
@@0: dec eax // и нифига там больше нету !!!
jnz @@0


Я просто пытался показать разницу в результатах: при работе головой, и - руками.
Если хотите, агитировал за первое.
карма: 9

0