Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

А нет ли какой нибудь программы для перевода паскаля в ассемблер? [D5, WinME]


Кен ©   (2002-11-01 07:58:00) 

Если обрабатывается большой объём инфорамации, то это может сильно ускорить работу.

Вон натолкнулся на такой пример :

function min(a,b:integer):integer; assembler;
asm
mov ax,a
cmp ax,b
jle @done
mov ax,b
@done:
end;

Красиво, эффектно, быстро. Если бы был какой нибудь скрипт умеющий так же оптимизировать программы. Есть ли такое ?


danilka   (2002-11-04 08:11:00) [1]

в дельфях ставишь брек-пойнт на месте, которое хочешь посмотреть из-под ассемблера, запускаешь программу, когда срабатывает брек-пойнт давишь Ctrl+Alt+C, все, наслаждайся ассемблером.
:))
работает на 5-х дельфях, на остальных не проверял, но наверняка тоже пашет.


Anatoly Podgoretsky   (2002-11-02 08:59:00) [2]

Кен (02.11.02 07:10)
Это означает, что Дельфи сделала более быстрый и более правильный код, чем у тебя. Как то на спор делали, кто лучше сгренерирует более оптимальный код, программист на ассемблерных вставках или Компилятор Дельфи, ассемблерщик проиграл, правда оба участника были среднего уровня.
Если тебя немного интересуют вопросы оптимизации, то посмотри на моем сайте книгу Гуйдо Гайлбелся по BASM и в руки букварь от Интела по оптимизации программ для процессоров x86

У тебя дельфи есть, если есть то посмотри CPU Window.


sask   (2002-11-02 08:41:00) [3]

Возьми любой дизассемблер и смотри...


Кен   (2002-11-02 07:10:00) [4]

2Владислав ©
Ну Дельфи использует eax вместо просто ax. Да и пример уж больно простой.
А как можно посмотреть какой ассемблерный код генерирует Дельфи ?
Чтобы мне посравнивать разные примеры.


NailS   (2002-11-01 16:11:00) [5]

Давно так не смеялся ;)
5 баллов.


Владислав   (2002-11-01 09:20:00) [6]

"Красиво, эффектно, быстро..."
В ответ на самое тривиальное:
function Min(a, b: integer): integer;
begin
if a > b then
Result:=b
else
Result:=a
end;

Delphi генерирует такой код.
function DelphiMin(a,b:integer): integer;
asm
cmp edx, eax
jnl @done
mov eax, edx
@done:
end;

Чем он хуже?


Opuhshii   (2002-11-01 09:11:00) [7]

2Кен (01.11.02 07:58)
"Красиво, эффектно, быстро.",.. а кто вам мешает тоже делать красиво, эффектно, быстро....


evgeg   (2002-11-01 08:15:00) [8]

Есть. Называется компилятор Дельфи.


Наверх

Титульная страница Поиск, карта сайта Написать письмо