Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

RusFAQ.ru: программирование на языке Assembler

Выпуск № 512
от 29.03.2003, 12:40

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 2863
Отправлено ответов: 8504
Активность: 297.0 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Joy
Статус: Опытный
Общий рейтинг: 130.68
[Подробней >>]
WNA
Статус: Начальный
Общий рейтинг: 109.4
[Подробней >>]
Gibbel
Статус: Профессиональный
Общий рейтинг: 108.15
URL: Страничка обо мне и моих друзьях
Телефон: +7 902 168 02 65
[Подробней >>]
 
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 150.33
URL: Программирование
[Подробней >>]
masquer
Статус: Профессиональный
Общий рейтинг: 142.93
[Подробней >>]
Maverick
Статус: Профессиональный
Общий рейтинг: 137.02
URL: Задачи по ассемблеру
Телефон: 89039415024 (BeeLine GSM)
[Подробней >>]
 
Ayl
Статус: Профессиональный
Общий рейтинг: 118.54
[Подробней >>]
Broken Sword
Статус: Профессиональный
Общий рейтинг: 124.61
URL: моя рассылка по Protected Mode
[Подробней >>]
akul
Статус: Опытный
Общий рейтинг: 116.75
Телефон: +6019-6416245
[Подробней >>]
 
keleb-glin
Статус: Опытный
Общий рейтинг: 108.77
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 2824. Подскажите, где можно почитать про 64-разрядные процессоры?... (ответов: 3)
Вопрос № 2825. Приветствую Вас господа эксперты! Писал я тут на досуге аналог Notepadа... Все шло хорошо(он даже ра... (ответов: 2)
Вопрос № 2826. Здравствуйте,уважаемые Эксперты! Как сделать ,чтобы программы написанные на асме (masm 611)под ДОС о... (ответов: 1)
Вопрос № 2827. Уважаемые эксперты! Получил эту рассылку впервые и сразу пишу. Всилу необходимости вынужден использо... (ответов: 1)
Вопрос № 2831. Здравствуйте уважаемые эксперты.Написал шпион(425 байт) и решил приписать его к win.com.Но ничего не... (ответов: 2)
Вопрос № 2832. Здравствуйте! Когда написал программу, возникла необходимость ее отладить в пошаговом режиме, но Tur... (ответов: 5)
Вопрос № 2834. Помогите, пожалуйста, найти отладчик, сохраняющий мнемоники. Turbo Debugger дизассемблирует exe, поэ... (ответов: 2)
Вопрос № 2836. Здравствуйте, эксперты! В настоящее время для BIOSa используется два типа микросхем (прямоугольные D... (ответов: 2)
Вопрос № 2837. Уважаемые экперты, доброго времени суток! У меня нынче сааавсем короткий вопрос, бо длинные кажись н... (ответов: 5)
Вопрос № 2839. Здраствуйте, эксперты!!! Я вас наверное уже достал с моими вопросами :), но все-таки. Подскажите, гд... (ответов: 2)

Вопросов: 10, ответов: 25


 Вопрос № 2824

Подскажите, где можно почитать про 64-разрядные процессоры?



Вопрос отправлен: 23.03.2003, 17:33
Отправитель: Юзеръ

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Приветствую Вас, Юзеръ!
Много где можно почитать, например на сайте www.intel.ru или www.amd.ru

Ответ отправлен: 24.03.2003, 11:17
Отправитель: Joy


Отвечает WNA

Доброе время суток, Юзеръ!
Например про Intel Itanium можно почитать у них на сайте и даже скачать полное описание с инструкциями в pdf


Ответ отправлен: 24.03.2003, 10:15
Отправитель: WNA


Отвечает Gibbel

Здравствуйте, Юзеръ!
Можно на сайтах производителей: Intel и AMD.

Ответ отправлен: 24.03.2003, 10:35
Отправитель: Gibbel


 Вопрос № 2825

Приветствую Вас господа эксперты!
Писал я тут на досуге аналог Notepadа... Все шло хорошо(он даже работал), пока не попробовал запустить его из под Win98 (а писал в XP, компилил MASMом).Под 98 не работало большинство функций, пришлось переделывать их код!Но вот одна проблема осталась: не открываются файлы больше 60,4Кб.На edit лимит убран в ноль. При открытии SendMessage возвращает 0.Не могу понять чего ему надо, ведь под XP открывал аж 48Мб!И вообще почему возникает такая несовместимость ведь я всего-навсего вызываю API, которыя, как мне говорили не зависят от версии Windows.
И еще вопрос.Процессор поочередно выполняет инструкции кода(в общем случае). При этом в большенстве программ код представляет собой цикл.Почему тогда простая програмка "jmp $" грузит процессор на 98%, а сложный обработчик оконных сообщений (тоже ведь цикл) вообще не замечается процессором???
Заранее примного благодарен.


Приложение:


Вопрос отправлен: 23.03.2003, 19:47
Отправитель: GHopper

[Следующий вопрос >>] [Список вопросов]

Отвечает Bob Johnson

Добрый день, GHopper!
1. Надо читать MSDN - вот что там написано про лимит текста (EM_LIMITTEXT): Edit controls on Windows 95/98: If this parameter is zero, the text length is set to 0x7FFE characters for single-line edit controls or 0xFFFF for multiline edit controls.
API одинаков, но реализация разная, вот отсюда и проблемы - надо в таких ситуациях всегда смотреть описание. Ну, а если ты задумал серьезный редактор, то стоит написать свой компонент.
2. Сложный обработчик оконных сообщений вызывается раз 100 (ну не больше) в секунду, в то время как jmp $ будет выполнена несколько миллиардов раз в секунду. В то же время ОС не знает, что процессор выполняет пустой цикл и считает поэтому, что он полностью занят.


Ответ отправлен: 24.03.2003, 22:21
Отправитель: Bob Johnson


Отвечает masquer

Доброе время суток, GHopper!
А что в ebx находится? И вообще по этому куску ничего не скажешь, если проект некоммерческий, может выложишь где, а мы скачаем и посмотрим, что к чему.

Ответ отправлен: 24.03.2003, 11:07
Отправитель: masquer


 Вопрос № 2826

Здравствуйте,уважаемые Эксперты! Как сделать ,чтобы
программы написанные на асме (masm 611)под ДОС
отображали русские символы. Кодировка символов нарушена.
Программа Keyrus.com не помогла.
Подскажите?



Вопрос отправлен: 23.03.2003, 23:04
Отправитель: Юрий (ch_y@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Приветствую Вас, Юрий!
Ты бы приложил программку свою, котороя "не отображает русские символы". Скорей всего ты что-то напутал. Смотри в уроках О. Калашникова примеры.

Ответ отправлен: 24.03.2003, 11:17
Отправитель: Joy


 Вопрос № 2827

Уважаемые эксперты! Получил эту рассылку впервые и сразу пишу. Всилу необходимости вынужден использовать досовский компиллятор masm.exe, к нему компановщик link.exe, и трансформер в com-файлы exe2bin.exe. Под Win ME, при попытке преобразования в com-формат, выдается сообщение "Incorrect DOS version", под Win'98se все работает, что делать? Нужно использовать именно эту операционку и именно этот компиллятор. Заранее спасибо.



Вопрос отправлен: 23.03.2003, 23:03
Отправитель: Graff

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Доброе время суток, Graff!
Хотелось бы поподробней узнать о версии MASM'а. Если 6.10 или выше, то там есть файл ml.exe Если ты его нашел, то пиши "ml proga.asm /AT" и получится у тебя сразу сом-файл. Если такого файла у тебя нет, то "masm proga.asm", затем "link.exe prog.obj /t" и сразу получишь сом-файл.
PS. Скачай рассылки Калашникова....

Ответ отправлен: 24.03.2003, 11:16
Отправитель: Joy


 Вопрос № 2831

Здравствуйте уважаемые эксперты.Написал шпион(425 байт) и решил приписать его к win.com.Но ничего не получилось (на других файлах работает всё нормально).Насколько я понял там стоит защитка проверят по моему мнению первые три байта.
Может кто-нибудь сталкивался с такой проблемой как можно её преодолеть.Именно для win.com.Помогите пожалуйста решить проблему.Заранее благодарен.Может у кого уже есть исправленный win.com.(win 98 se).



Вопрос отправлен: 24.03.2003, 14:13
Отправитель: LandFox (anonims@gorodok.net)

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Добрый день, LandFox!
Ну, насколько я знаю, win.com в виндах - это .exe файл переименованный... Так же, как и command.com...

Ответ отправлен: 24.03.2003, 14:50
Отправитель: Gibbel


Отвечает Maverick

Добрый день, LandFox!
Я не знаю какая там стоит защита, но если та про которую сказал ты, то ее довольно легко обойти. Почитай документацию по вирусам. Т.е. когда win заражен твоей программой, прежде чем передать ей управление он восстановит ее байты, так что с этим проблем не будет. Другое дело, если он сверяет свою контрольную сумму, тогда надо будет убить или обойти это место. Можно и более изощренно сделать, ведь тебе не обязательно менять первые 3 байта менять, можешь jmp и в середину кода воткнуть, это надо на сам файл смотреть, чтоб не перемудрить.
Если что, пиши:
Maverick@nightmail.ru

Ответ отправлен: 27.03.2003, 04:46
Отправитель: Maverick


 Вопрос № 2832

Здравствуйте! Когда написал программу, возникла необходимость ее отладить в пошаговом режиме, но Turbo Debugger не может сохранять мнемоники. Посоветуйте, пожалуйста, какой-нибудь дебаггер, кот. не дизассемблирует, а использует текст программы напрямую, сохраняя мнемоники.
Спасибо!



Вопрос отправлен: 24.03.2003, 15:15
Отправитель: Art (panar@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Ayl

Приветствую Вас, Art!
Так компили в exe-файл с отладочной информацией - будет тебе текст программы. Иначе ничего не получится - откуда же он возьмет текст программы?

Ответ отправлен: 24.03.2003, 15:58
Отправитель: Ayl


Отвечает Broken Sword

Добрый день, Art!
Какие такие "мнемоники"? отладочная инфа что ли? TD ее понимает, нужно только при компиляции задать параметры генерации отладочной инфы (символов). У каждого компиля они (параметры) свои.

Ответ отправлен: 24.03.2003, 16:52
Отправитель: Broken Sword


Отвечает masquer

Здравствуйте, Art!
Если под дос, то надо компилировать с отладочными символами и даже TD должен это понимать. Под виндой то же самое, только нужно pdb файл создавать - SoftIce такое поймет.

Ответ отправлен: 24.03.2003, 17:03
Отправитель: masquer


Отвечает Bob Johnson

Приветствую Вас, Art!
Он это может делать, только для этого необходимо компилировать и линковать с включенной отладочной информацией. Для TASM это так:
tasm /zi
tlink /v
Тогда все будет ок.


Ответ отправлен: 25.03.2003, 03:22
Отправитель: Bob Johnson


Отвечает akul

Здравствуйте, Art!
если будешь компилить tasm'ом, линковать tlink'ом, а отлаживать TD, да еще перед этим внимательно доку по отладке почитаешь, то все будет правильно показываться, то есть не дизассемблированный код, а именно твой исходник...

Ответ отправлен: 25.03.2003, 06:39
Отправитель: akul


 Вопрос № 2834

Помогите, пожалуйста, найти отладчик, сохраняющий мнемоники.
Turbo Debugger дизассемблирует exe, поэтому не о каких изначальных мнемониках речь не идет.



Вопрос отправлен: 25.03.2003, 00:19
Отправитель: PArt

[Следующий вопрос >>] [Список вопросов]

Отвечает Ayl

Добрый день, PArt!
Еще раз говорю - ты должен свою программу откомпилировать с отладочной информацией - тогда Turbo Debbuger покажет тебе исходный код. А отладчик, сохраняющий мнемоники - ты сам-то понял, что сказал? Где он их сохранять должен? Сначала неплохо бы подумать, а уж потом спрашивать.

Ответ отправлен: 25.03.2003, 11:06
Отправитель: Ayl


Отвечает Gibbel

Приветствую Вас, PArt!
Тебе же вроде уже отвечали... Компилируй свою программу с отладочной информацией, и тогда в TD у тебя будет отображаться твой исходный текст (при условии, что ты exe открываешь из того же каталога, где и исходник).
Если не добавлять в exe отладочную информацию, то ни один отладчик тебе ее не выдаст.
P.S.: дизассемблированный текст, это как раз и есть мнемоника...)))

Ответ отправлен: 25.03.2003, 11:50
Отправитель: Gibbel


 Вопрос № 2836

Здравствуйте, эксперты!
В настоящее время для BIOSa используется два типа микросхем (прямоугольные DIP-корпуса и маленькие квадратные). Есть ли переходник, чтобы вместо прямоугольной можно было вставить квадратную?
Заранее благодарен, EraSer



Вопрос отправлен: 25.03.2003, 08:35
Отправитель: EraSer (eraser99@tut.by)

[Следующий вопрос >>] [Список вопросов]

Отвечает akul

Приветствую Вас, EraSer!
Да, как правило это аксесуар к программаторам. Ищи там же где продают последние.

Ответ отправлен: 25.03.2003, 11:26
Отправитель: akul


Отвечает Maverick

Доброе время суток, EraSer!
А если так вопрос поставить, взаимозаменяемы ли они, это ведь могут быть и разные типы... А переходник я думаю сделать минут за 20 можно, главное чтоб у них память, питание и т.д. одинаковое было.


Ответ отправлен: 27.03.2003, 04:46
Отправитель: Maverick


 Вопрос № 2837

Уважаемые экперты, доброго времени суток! У меня нынче сааавсем короткий вопрос,
бо длинные кажись не нравяца. GetDlgItem меняет регистр ECX? У меня выходит что
меняет :( До вызова GetDlgItem ECX=4, после ECX=?? ну большое число, не упомню
так что же? регистр ECX может поменяться при вызове любой апишной функции?



Вопрос отправлен: 25.03.2003, 10:47
Отправитель: Samodelkin (transacter@mail333.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает Ayl

Приветствую Вас, Samodelkin!
Насколько я понимаю, неизменность регистров гарантируется только для регистров EBX, EBP, EDI, ESI. Остальные могут изменяться.

Ответ отправлен: 25.03.2003, 11:10
Отправитель: Ayl


Отвечает Gibbel

Здравствуйте, Samodelkin!
Очень большое количество API функций меняют ECX (все GDI точно)...

Ответ отправлен: 25.03.2003, 12:16
Отправитель: Gibbel


Отвечает keleb-glin

Добрый день, Samodelkin!
Может, ещё как может. У меня самого такое происходило. Только я не особо с этим делом мучился ( push ecx pop ecx ) ещё никому не повредило


Ответ отправлен: 25.03.2003, 15:38
Отправитель: keleb-glin


Отвечает Bob Johnson

Доброе время суток, Samodelkin!
Любая API функция свободно может изменять регистры eax, ecx и edx, но не трогает ebx, esi, edi и ebp. Конечно, теоретически возможно, что какая-то функция и не меняет ecx, но на это не стоит рассчитывать.


Ответ отправлен: 25.03.2003, 16:17
Отправитель: Bob Johnson


Отвечает WNA

Приветствую Вас, Samodelkin!
Почти все функции Windows API меняют регистры EAX, EDX, ECX


Ответ отправлен: 25.03.2003, 19:00
Отправитель: WNA


 Вопрос № 2839

Здраствуйте, эксперты!!!
Я вас наверное уже достал с моими вопросами :), но все-таки.
Подскажите, где можно взять литературу(или пришлите мне на мыло, если у вас такое есть) по следующим темам:
1. Описание MBR и загрузочного сектора разделов жесткого диска.
2. Написание собственного загрузчика.
3. Работа с разделами жесткого диска(создание, удаление, изменение размеров и т.д.).
4. Хорошая книга по защищенному режиму(но только по нему, про реальный не надо).
5. Програмирование последовательного порта и модема.
6. Стандарт POSIX(что это такое, его техническое описание)
Пока, думаю, хватит :)
Большое спасибо всем, кто откликнется, Torax.



Вопрос отправлен: 25.03.2003, 12:34
Отправитель: Torax (torax@dotes.west.energy.gov.ua)

[Следующий вопрос >>] [Список вопросов]

Отвечает Maverick

Добрый день, Torax!
На www.sasm.narod.ru где то валялась книга Семенко по защищенке, погляди там.
Скинул на мыло, что было.


Ответ отправлен: 28.03.2003, 16:37
Отправитель: Maverick


Отвечает Bob Johnson

Здравствуйте, Torax!
1. Я видел такое в MSDN (действительно, чего там только нет).
3. Для этого надо однакомиться с таблицами разделов и с файловыми системами, т.к. если ты захочешь изменить размер раздела, то нужно будет изменять структуру файловой системы, а это не одинаково для FAT32 и NTFS (например).
4. Мне нравится В.Л. Григорьев "Микропроцессор i486 архитектура и программирование" (в 4-х книгах) - там есть все про 486 процессор. Достаточно подробно. Также, конечно, мануалы от производителя (если знаешь английский).


Ответ отправлен: 26.03.2003, 00:14
Отправитель: Bob Johnson



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (37)
C / C++ (28)
Perl (6)
Delphi (15)
Pascal (20)
Basic / VBA (9)
Java / JavaScript (9)
PHP (5)
MySQL / MSSQL (6)
Пользователю
Windows 95/98/Me (30)
Windows NT/2000/XP (23)
"Железо" (28)
Поиск информации (15)
Администратору
Windows NT/2000/XP (10)
Linux / Unix (13)
Юристу
Гражданское право (8)
Семейное право (4)
Трудовое право (4)
КоАП (5)

Отправить вопрос всем экспертам выбранной рассылки.




Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное