|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Ноя 1, 2003 03:47:24 Да я всё о Win32 говорю! Если ты объявляешь переменную как структуру... А в чём тогда разница в секциях? В .data данные хранятся прямо в файле, а для .data? — выделяется память при загрузке? Или дело только в инициализации? Да, нет, вспоминаю всё, что прочитал о секциях. Дело в выделении памяти и инициализации? |
|
|
Дата: Ноя 1, 2003 03:53:09 · Поправил: Sk. Inc. В учебнике Юрова есть глава о взаимодействии С-Ассемблер. Там написано, что для того, чтобы компилятор TASM сам заботился о взаимодействии этих языков, необходимо объявить процедуру следующим образом: _asmproc proc с a:byteПри этом подчеркивание перед именем обязательно. "С" после "proc" указывает на язык. Так же, написано, что используется директива "MODEL" с операндом "C", хотя в примере написано просто "MODEL small"? Может это очередная его (Юрова) опечатка? P.S. Вся глава, кажется, про Dos. |
|
|
Дата: Ноя 1, 2003 04:01:10 · Поправил: Sk. Inc. чём тогда разница в секциях В случае с .data?, память для переменной выделяется при загрузке программы, в при .data, в самом EXE-шнике. Если в .data объявлять переменную "MyVariable dd ?", то это будет равносильно "MyVariable dd 0" и знак вопроса в этом случае будет просто заменен на 0 в процессе компиляции. |
|
|
Дата: Ноя 1, 2003 04:16:17 · Поправил: IceStudent TASM TASM... Я за MASM'ом сижу... Там написано: имя_процедуры PROC [[модификатор языка]язык][расстояние] с. 332 И потом таблица языков. Но кто его знает, как определять в примере? (Дискета, что с книгой, девственно чистой оказалось) И ещё в таблице есть С и С++. А что, компилятор стерпит эти плюсы? ... А, вот нашёл, тут "с" такая маленькая, что я в темноте не разглядел. Но он пишет, что с директивой MODEL «мы доверяем компилятору...», а потом, что «при использовании конкретных программных средств организация... намного проблематичней» И кому верить? Поэтому я и не захотел объявлять глобальную cdecl, а буду объявлять прсто "с" в подпрограмме. А как насчёт секций? P.S. Уже понял, как я и думал... |
|
|
Дата: Ноя 1, 2003 04:20:07 · Поправил: Sk. Inc. IceStudent А как насчёт секций? А разве я не ответил (предыдущий пост от Ноя 1, 2003 04:01:10)? |
|
|
Дата: Ноя 1, 2003 04:27:47 P.S. Вся глава, кажется, про Dos. Да, там одни прерывания. А читать про программирование в Windows — смех один, такое впечатление, что книга была написана в 97-98 годах... А разве я не ответил А разве я не поправил? Просто забыл P.S. поставить, а ведь надо было! Спасибо за помощь! |
|
|
Дата: Ноя 1, 2003 04:30:54 А разве я не поправил? Похоже, что я успел прочитать пост до правки. Какой я шустрый ;) Дискета, что с книгой, девственно чистой оказалось А у меня нормальная, могу поделиться, если нужно :) |
|
|
Дата: Ноя 1, 2003 04:46:08 А у меня нормальная, могу поделиться, если нужно :) Спасибо, но я на форуме пост встретил о том, что в издательстве на халяву дают вложения, вот и накачал себе примеров кучу, только книг мало. Качал я с "Питера". Обущали на Королевстве Delphi подарить, но до сих пор нет... |
|
|
Дата: Ноя 4, 2003 07:56:16 И ещё вопрос. Есть такое, что получается при компиляции: Load proc near
lpArg = dword ptr 8...
Нужно: Load proc near lpArg = dword ptr 4 Как сделать? И вот: function Func(MyStruct: TStruct):Boolean; begin Result:= MyStruct.Hello(6); end; Можно так? MyFunc proc pMyStruct: PTStruct mov eax,pMyStruct.Hello call eax MyFunc endp |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.079 |