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

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

Процедуры и функции [D7, XP]


Страницы:   1 2 3 4 5 6

Steep ©   (2006-12-19 16:12:00) 

Как я понял использование (изменение) параметров компонента в сабже запрещена.
Как этого можно избежать обойти?


Anatoly Podgoretsky   (2006-12-20 13:35:00) [41]

> Сергей М.  (20.12.2006 13:19:12)  [72]

> Все равно "простым смертным", не читавшим справку, это не понять)

Согласен


Anatoly Podgoretsky   (2006-12-20 13:35:00) [42]

> Сергей М.  (20.12.2006 13:21:13)  [73]

Не привыкать


Anatoly Podgoretsky   (2006-12-20 13:33:00) [43]

> oxffff  (20.12.2006 13:13:09)  [69]

In параметры, а также var, out также не имею отношения к возвращаемым функциям значениям.


Anatoly Podgoretsky   (2006-12-20 13:33:00) [44]

> Сергей М.  (20.12.2006 13:14:10)  [70]

Читай выше


Anatoly Podgoretsky   (2006-12-20 13:32:00) [45]

> Сергей М.  (20.12.2006 13:10:07)  [67]

Баланс стека не имеет отношения к возврату значений.
Значения не возвращаются через стек.
Возврат значений языко независим и не зависим от примененого соглашения об вызове, он всегда одинаков.


Anatoly Podgoretsky   (2006-12-20 13:32:00) [46]

> oxffff  (20.12.2006 13:11:08)  [68]

Не тороплюсь, стек то при чем?


Steep   (2006-12-20 13:31:00) [47]


> Только не спрашивай почему)

вот сдесь то как-раз я все и понял :)

> > тип integer (ведь двоичние числа не могут быть real)
>
>
> Ерунду ты сморозил

то есть если я вызову смещения для числа (14,5) в двоичной системе это
1110 (как и 14) (хотя может это кидаеться в доп регистр - это уж я не знаю)
то получится те же 111 (7)
или нет?


Сергей М.   (2006-12-20 13:21:00) [48]


> тип integer (ведь двоичние числа не могут быть real)


Ерунду ты сморозил


Сергей М.   (2006-12-20 13:19:00) [49]


> Steep ©   (20.12.06 13:16) [71]


Конкретно для данногослучая это будет выглядеть так:

fuction smech(chislo: integer): integer;
asm
 shr eax, 1
end;

Только не спрашивай почему).. Все равно "простым смертным", не читавшим справку, это не понять)


Steep   (2006-12-20 13:16:00) [50]

ну функция я вроде описал

fuction smech(chislo: integer): integer;
begin
 asm
 //здесь нужно делать смещение как-то вывести результат в result
 //shr F1
 end;
end;

тип integer (ведь двоичние числа не могут быть real)

как я понял остальное лучше смотреть в справке (ато вы спорите о той фигне которую нам [простым смертным] не понять, а вопрос так и остаеться нераскрытым....)


Сергей М.   (2006-12-20 13:14:00) [51]


> Anatoly Podgoretsky ©   (20.12.06 13:05) [66]


Если ты о "стандартной" паре [edx:]eax, то на то она и "стандартная" пара для "стандартных" же соглашений) .. А если соглашение не стандартное ?


oxffff   (2006-12-20 13:13:00) [52]


> Anatoly Podgoretsky ©   (20.12.06 13:05) [66]
> > Сергей М.  (20.12.2006 13:02:05)  [65]
>
> При возврате из функций соглашение об вызове не используется.
>


Не торопитесь.
Используется.
А кто стек будет очищать?
Caller или func.
Я имею ввиду In параметры.


oxffff   (2006-12-20 13:11:00) [53]


> Anatoly Podgoretsky ©   (20.12.06 13:05) [66]
> > Сергей М.  (20.12.2006 13:02:05)  [65]
>
> При возврате из функций соглашение об вызове не используется.
>


Не торопитесь.
Используется.
А кто стек будет очищать?
Caller или func.


Сергей М.   (2006-12-20 13:10:00) [54]


> Anatoly Podgoretsky ©   (20.12.06 13:05) [66]


Как раз привозврате они и используются - соглашения при этом определяют, кто является ответственным за баланс стека.


Anatoly Podgoretsky   (2006-12-20 13:05:00) [55]

> Сергей М.  (20.12.2006 13:02:05)  [65]

При возврате из функций соглашение об вызове не используется.


Сергей М.   (2006-12-20 13:02:00) [56]


> как вернуть значении из функции использующей асм


Смотря что за тип значения и смотря какое соглашение о вызове этой ф-ции использовано.


Anatoly Podgoretsky   (2006-12-20 12:58:00) [57]

> Steep  (20.12.2006 12:55:03)  [63]

Определяется типом возвращаемых данных, описание есть в справке и это не зависит от того, асм или нет.


Steep   (2006-12-20 12:55:00) [58]

я может несовсем понятно выразился
мне в теории нужно как вернуть значении из функции использующей асм
сдвиг я бы уж нашел, но все равно спасибо!


Сергей М.   (2006-12-20 12:47:00) [59]


> Steep ©   (20.12.06 11:49) [60]
>
>


Это называется не "смещение числа", а поразрядный сдвиг.

см. shr


novill   (2006-12-20 12:12:00) [60]

> Смещение числа
> т.е.
> 1110 (14) смещаем 111 получаем 7

shr


Страницы:   1 2 3 4 5 6

Наверх

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