Вниз
Скачать: CL | DM;

А нет ли какой нибудь программы для перевода паскаля в ассемблер?   Найти похожие ветки 

 
Кен   (2002-11-01 07:58) [0]

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

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

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

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


 
evgeg ©   (2002-11-01 08:15) [1]

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


 
Opuhshii ©   (2002-11-01 09:11) [2]

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


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

"Красиво, эффектно, быстро..."
В ответ на самое тривиальное:
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;

Чем он хуже?


 
NailS ©   (2002-11-01 16:11) [4]

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


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

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


 
sask ©   (2002-11-02 08:41) [6]

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


 
Anatoly Podgoretsky ©   (2002-11-02 08:59) [7]

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

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


 
danilka   (2002-11-04 08:11) [8]

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
6-46036
Metallica
2002-09-19 19:58
2002.11.14
Почему не загружаются две и более HTTP-страницы одновременно.


3-45717
Fishka
2002-10-23 15:22
2002.11.14
Ограничение на значение в столбце


14-46095
Qpwoe!
2002-10-18 15:39
2002.11.14
Как мне вытащить из какого-либа окна текст


1-45904
RDA
2002-11-05 18:48
2002.11.14
Internet Explorer


1-45992
Smirnoff
2002-11-04 16:47
2002.11.14
Как попроще выделить из переменной-даты год?




   Наверх