Рассылка закрыта
При закрытии подписчики были переданы в рассылку "RFpro.ru: Ассемблер? Это просто! Учимся программировать" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
RusFAQ.ru: программирование на языке Assembler
Информационный Канал Subscribe.Ru |
RusFAQ.ru: программирование на языке Assembler
Выпуск № 480
от 28.01.2003, 18:40
Администратор: Имя: Калашников О.А. URL: Информационный ресурс ICQ: 68951340 Россия, Москва |
О рассылке: Задано вопросов: 2519 Отправлено ответов: 7622 Активность: 302.5 %
|
Список экспертов, ответы которых опубликованы в данном выпуске |
Maverick Статус: Профессиональный Общий рейтинг: 140.06 URL: Задачи по ассемблеру Телефон: 89039415024 (BeeLine GSM) [Подробней >>] |
Igoryk Статус: Опытный Общий рейтинг: 137.82 URL: IgorykSoft [Подробней >>] |
Ayl Статус: Профессиональный Общий рейтинг: 118.11 [Подробней >>] |
vitya Статус: Профессиональный Общий рейтинг: 108.02 [Подробней >>] |
Eugene Статус: Опытный Общий рейтинг: 109.18 URL: мощный файловый архив [Подробней >>] |
Bob Johnson Статус: Профессиональный Общий рейтинг: 151.75 URL: Программирование [Подробней >>] |
St Статус: Опытный Общий рейтинг: 111.84 [Подробней >>] |
Broken Sword Статус: Профессиональный Общий рейтинг: 126.51 URL: моя рассылка по Protected Mode [Подробней >>] |
LIFO Статус: Профессиональный Общий рейтинг: 118.54 URL: наш сайт Телефон: 8 01710 24758 [Подробней >>] |
masquer Статус: Профессиональный Общий рейтинг: 146.22 [Подробней >>] |
Beeblebrox Статус: Профессиональный Общий рейтинг: 110.38 URL: Beeblebrox / TMA HomePage [Подробней >>] |
keleb-glin Статус: Опытный Общий рейтинг: 112.57 [Подробней >>] |
Краткий перечень вопросов |
Вопрос № 2482. Здравствуйте!!! 1.как в асме сделать типа этого Если namder=22 то перейти к тому-то ... (ответов: 7)
Вопрос № 2483. Как из моей программы запустить какую-нибуть другую программу, скажем например calc.exe (под Win32)... (ответов: 5)
Вопрос № 2484. Доброе время суток эксперты. Прошу помочь в поиске Driver Studio 2.7 Я уже третий день шарюсь по ине... (ответов: 1)
Вопрос № 2485. Вот вы меня послали на сайты с инструментами для , крекинга, а на ворос , вы эти занимались ? Вы так... (ответов: 4)
Вопрос № 2486. Этого добра хватает, всяких статей,(WinZip), вы можете ответить, кно нить ломал или нет.Повторяю Ася... (ответов: 5)
Вопрос № 2487. Здраствуйте. Я хочу разобраться в устройстве памяти, процессора, стэка... Что посоветуете почитать??... (ответов: 4)
Вопрос № 2488. Спецально для "masquer": Номер аси нужен для того что по по почте, долго получается, что н... (ответов: 3)
Вопросов: 7, ответов: 29
Вопрос № 2482 |
Здравствуйте!!!
1.как в асме сделать типа этого
Если namder=22 то
перейти к тому-то
add namber,2
иначе
перейти к другому
add namber,1
или кто не понял вот так это выглядит на pascal/delphi
if namber=2 then begin
к тому-то;
namber:=namber+2;
end else begin
к другому;
namber:=namber+1;
end;
2.у меня стоит tasm 5 и примеры по win32 требуют подключать
include windows.inc
include user32.inc
include kernel32.inc
include comdlg32.inc
includelib user32.lib
includelib kernel32.lib
includelib comdlg32.lib
у меня их нет кроме windows.inc.... но я знаю что у меня есть другое IMPORT.LIB .... но как им пользоваться .... ???
3. скажите где можно скачать хороший дизассемблер и научиться им работать
Вопрос отправлен: 23.01.2003, 19:38
Отправитель: lamachok
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Здравствуйте, lamachok!
start:
cmp namber,22
je begin
nobegin:
add namber,1
jmp exit
begin:
add namber,2
exit:
ret
namber db 22
Ответ отправлен: 24.01.2003, 15:03
Отправитель: Maverick
Отвечает Igoryk
Приветствую Вас, lamachok!
1. cmp [number], 22
je туда-то
если не равно
jmp Ending
Ending:
2. На wasm.ru
Ответ отправлен: 24.01.2003, 18:24
Отправитель: Igoryk
Отвечает Ayl
Здравствуйте, lamachok!
1. Так и пишешь:
cmp [number], 22
jne A
call к тому-то
add [number], 2
jmp short B
A:
call к другому
inc [number]
B:
Ответ отправлен: 24.01.2003, 11:38
Отправитель: Ayl
Отвечает vitya
Добрый день, lamachok!
хм.. думаю, что так:
mov ax, number
cmp ax, 2; сравнили
jne a: ;если не равно прыгаем на a.
add ax, 2
mov number, ax
jmp b:
a:
add ax, 1
mov number ax
b:
...; тут остальной код
Ответ отправлен: 24.01.2003, 08:54
Отправитель: vitya
Отвечает Eugene
Приветствую Вас, lamachok!
Так как у тебя всё время идёт сложение, то проще будет конструкция:
cmp number, 22
jne plus
inc number
plus: inc number
А в общем эта конструкция выглядит вот так:
cmp number, 22 ;if number = 22
jne not_equal
equal: add number, 2 ;then number := number + 2;
jmp exit_cmp
not_equal: inc number ;else number := number + 1;
exit_cmp: ;end if;
А с import.lib всё не так сложно, как кажется. В тексте программы пишешь например:
extrn GetModuleHandleA :PROC
CodeSeg
Start: call GetModuleHandleA, 0
А при линкуешь так:
tasm32 -zn -ml -m3 -os a.asm
tlink32 -Tpe -aa -c -L $(LIBDIR)import32.lib a.obj, a.exe
Ответ отправлен: 24.01.2003, 09:43
Отправитель: Eugene
Отвечает Bob Johnson
Здравствуйте, lamachok!
2. Если тебе нужны include к тасму - можешь скачать их с моей страницы. Там же (раздел "FAQ") смотри описание, как сделать их самому и как сделать (и использовать) lib файлы.
Адрес: bobjohnson.nm.ru
Ответ отправлен: 24.01.2003, 12:02
Отправитель: Bob Johnson
Отвечает St
Привет, lamachok!
1) Если То Иначе в ассемблере выглядит так
cmp number,22 ;сравнить переменную с 22
je label1 ;если равно то переход на метку label1
;далее код Иначе без каких нибудь указателей границ
;типа begin-end или {}
Вставлять код между cmp и je (или другими командами условных переходов) нужно с осторожностью, как как, например, поведение je зависит от установки флага нуля в регистре флагов процессора. При равенстве/неравенстве результата команды помещенной между cmp и je нулю этот флаг установится в ноль/сбросится с нуля и испортит результат сравнения.
2) В тасм5 в отличие от пакета Масм32 (это не чистый продукт микрософт а его доделка программистами) все include собраны в Win32.inc без разделения по тому к какой системной DLL они относятся. К тому же там находится очень мало описаний, увы. Поэтому если там нет к примеру описания нужной константы, ее придется добавить самому (можно вести например свой inc-файл) и взять ее можно либо из уже указанного Масм32 (там есть почти всё, но нужно сделать иногда поправку на разницу между тасм и масм) или из h-файлов входящих в C/C++ (там тоже придется немного поменять). Еще можно попытаться взять тасм5.5 там есть файл W32.inc сильно увеличенный по сравнению с тем что в тасм5 (но все равно неполный)
Аналогично в Import.lib уже собраны ссылки на функции Windows API из нескольких системных DLL (kernel, user, gdi). В масм32 lib-файлы к этим DLL находятся каждый в своем файле. Так что inc и lib файлы это несколько разные вещи. Первые используются на этапе компиляции и вторые на этапе линковки.
3) Дизассемблер или дебаггер? Дизассемблеры (в основном под винды): IDA (dos интерфейс), W32dasm (windows интерфейс)
Дебаггеры: SoftIce (немного сложноват для начинающих, но может практически всё), TurboDebugger (входит в тасм, хороший интерфейс и приличные возможности, ориентирован прежде всего на отладку программ написанных на тасме)
St
Ответ отправлен: 25.01.2003, 13:20
Отправитель: St
Вопрос № 2483 |
Как из моей программы запустить какую-нибуть другую программу, скажем например calc.exe (под Win32)
Вопрос отправлен: 23.01.2003, 19:39
Отправитель: portos
[Следующий вопрос >>] [Список вопросов]
Отвечает Eugene
Здравствуйте, portos!
Если ты пишешь под выньдос, то используй API функцию ShellExecute, если же под дос, то тебе надо использовать функцию 4Bh.
Приложение:
Ответ отправлен: 24.01.2003, 09:54
Отправитель: Eugene
Отвечает Igoryk
Приветствую Вас, portos!
Для этого используется API-функция ShellExecute.
Ответ отправлен: 24.01.2003, 18:24
Отправитель: Igoryk
Отвечает vitya
Доброе время суток, portos!
Функции Win32API к вашим услугам:
1. WinExec
2. ShellExecute
3. CreateProcess.
Думаю с параметрами, кроме последней у вас проблем не возникнет. Но врядли до нее дойдет дело.
Я советовал бы пользоваться второй.
Ответ отправлен: 24.01.2003, 08:51
Отправитель: vitya
Отвечает Bob Johnson
Доброе время суток, portos!
1. CreateProcess
2. ShellExecute
Ответ отправлен: 24.01.2003, 12:03
Отправитель: Bob Johnson
Отвечает St
Привет, portos!
Используйте функцию CreateProcess. Ее описание есть в справочнике по программированию (MSDN или Win32.hlp).
St
Ответ отправлен: 25.01.2003, 13:38
Отправитель: St
Вопрос № 2484 |
Доброе время суток эксперты.
Прошу помочь в поиске Driver Studio 2.7 Я уже третий день шарюсь по инету и нихрена. Был на wzor.net но там нужно регистрироваться. Я не против но по техническим причинам у них регистрация остановленна :((. А так в нете только версия 2,6 ито ссылки дохлые. Даже незнаю что делать. Кстати сейчас пароль доступа к сайту wzor.net
логин trial
пароль bkmafr:ns@yt.ghfd
Может кто зарегистрировался на этом сайте раньше поделитесь логином с паролем. Уж больно надо сдуть эту дривер студию. Уже запарил глючный айс а по слухам в ентой студии сто пудов рабойчий. Вот так. Зарание спасибо и удачи.
Вопрос отправлен: 23.01.2003, 21:15
Отправитель: Xatab (Xatab@mail.kz)
[Следующий вопрос >>] [Список вопросов]
Отвечает Eugene
Добрый день, Xatab!
Я где-то слышал, что это лежит на ftp.exetools.com
А пароль на www.exetools.com/forum вроде.
Ответ отправлен: 24.01.2003, 09:56
Отправитель: Eugene
Вопрос № 2485 |
Вот вы меня послали на сайты с инструментами для , крекинга, а на ворос , вы эти занимались ? Вы так и Неответили. Вопрос: Есть где наподобие обучения работы в софтайс, а не на примерах разного рода програм - чтоб были описанны все возможности и короткие команды, в виде учебника? Мой ICQ 212481946.
Приложение:
Вопрос отправлен: 24.01.2003, 12:33
Отправитель: Sandro (sandro_19@front.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Broken Sword
Здравствуйте, Sandro!
Скоро (к середине-концу) весны выйдет книга по SoftICE, в ней будет все что нужно и даже больше
Ответ отправлен: 24.01.2003, 17:07
Отправитель: Broken Sword
Отвечает Maverick
Доброе время суток, Sandro!
У меня где то был пример, как ломануть winzip, могу дать.
Ответ отправлен: 24.01.2003, 15:03
Отправитель: Maverick
Отвечает Eugene
Доброе время суток, Sandro!
А у Soft Ice'a нету хелпа?
Ответ отправлен: 24.01.2003, 13:28
Отправитель: Eugene
Отвечает LIFO
Добрый день, Sandro!
Есть в софтайсе очень хорошая документация(только на английском)
Мне ее вполне хватает.
Ответ отправлен: 26.01.2003, 10:02
Отправитель: LIFO
Вопрос № 2486 |
Этого добра хватает, всяких статей,(WinZip), вы можете ответить, кно нить ломал или нет.Повторяю Ася:212481946?Чё так трудно что ли?
Вопрос отправлен: 24.01.2003, 16:15
Отправитель: Sandro (Sandro_19@front.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Добрый день, Sandro!
Да нет, нет трудно.
Ты спрашивал по докам, я и ответил. Прямой вопрос, прямой ответ.
НЕТ не ломал, я неск-ко в другой области специализируюсь.
Ответ отправлен: 25.01.2003, 17:08
Отправитель: Maverick
Отвечает masquer
Приветствую Вас, Sandro!
Чего раскричался, остынь, горячий финский парень. Отвечаю - кто-нибудь точно ломал. Чего ты хочешь? Чтобы кто-то тебе ликбез устраивал? Бери статьи, читай, думай, если что-то непонятно будет, спрашивай, и с какой-то вероятностью получишь ответ. А чего ася со знаком вопроса? И что трудно?
Ты так вопросы и не научился задавать...
Ответ отправлен: 24.01.2003, 16:38
Отправитель: masquer
Отвечает Beeblebrox
Здравствуйте, Sandro!
Ну, ломал, а что? Все равно этому не научишь. Если ты выучишь асм настолько, что будешь листать отладчик со скоростью 20 строк в секунду с примерным (интуитивным) пониманием того, что происходит - тогда и начинай смотреть всякие туториалы, написанные хорошими крекерами.
Ответ отправлен: 24.01.2003, 16:51
Отправитель: Beeblebrox
Отвечает St
Привет, Sandro!
Я как-то ломал просто из интереса, могу ли я: из 8 сломал 4. Ломал в помощью TD с редким привлечением SoftIce. Обычно вследствие не самой высокой квалификации это занимало несколько дней (в случае неудачи иногда больше). Статьи по взлому с DoRE прочитал уже после того как бросил это дело. Было это года 4 назад. Никогда не писал code-generator'ов, обычно просто менял je на jne или аналогичное.
St
Ответ отправлен: 25.01.2003, 13:37
Отправитель: St
Отвечает LIFO
Здравствуйте, Sandro!
ну раз хватает, так и учись(здесь теперь все от тебя зависит)
НЕ ясно - спрашивай.
Ответ отправлен: 26.01.2003, 10:25
Отправитель: LIFO
Вопрос № 2487 |
Здраствуйте.
Я хочу разобраться в устройстве памяти, процессора, стэка...
Что посоветуете почитать??? Или в крадце расскажите, если возможно? (буду очень благодарен.
И ещё, что такое layout?
Зарарнее благодарен.
Вопрос отправлен: 24.01.2003, 16:24
Отправитель: ManderX
[Следующий вопрос >>] [Список вопросов]
Отвечает Igoryk
Приветствую Вас, ManderX!
На моем сайте в разделе "Документация" то, что тебе нужно (около 500Кб)
Ответ отправлен: 24.01.2003, 18:24
Отправитель: Igoryk
Отвечает Maverick
Здравствуйте, ManderX!
А почему персонально?
Лучше купить книгу Зубкова в бумажном варианте, это в идеале.
Можно Юрова, хоть там и много опечаток. Да и вообще много доков в нете, все хороши по своему.
Ответ отправлен: 25.01.2003, 17:08
Отправитель: Maverick
Отвечает Ayl
Здравствуйте, ManderX!
Почитать? Любую книжку по ассемблеру. Например, Юрова.
Насчет рассказать вкратце. А это смотря что тебя интересует.
В общем, процессор - это основная часть компа, которая позволяет сохранять данные в регистрах, выполнять операции над ними, взаимодействовать с памятью и внешними устройствами.
Систему команд процессора - см.литературу или в инете.
Память - набор ячеек, способных хранить определенной число двоичных разрядов. Обычно 8 или т.н. байт. Каждая ячейка характеризуется уникальным числом, называемом адресом данной ячейки. Память бывает нескольких типов, причем разделение может идти по нескольким параметрам. Чаще всего различают ОЗУ и ПЗУ.
Стек. Если по научному, то это способ организации данных, при котором элемент, который поступает на обработку последним, обрабатывается первым. Пример стека в реальной жизни - патроны в магазине. Патрон, который был помещен в магазин первым, будет использован в самую последнюю очередь. Синонимом названия стек является аббревиатура LIFO (Last In - First Out).
В ассемблере стек используется для временного хранения значений, сохранения адреса возврата из процедуры, передачи параметров в процедуры. На самом деле, стек определяется адресом последнего помещенного в стек элемента.
Ответ отправлен: 24.01.2003, 17:23
Отправитель: Ayl
Отвечает keleb-glin
Доброе время суток, ManderX!
Читай книги В. Юрова.
Ответ отправлен: 26.01.2003, 19:35
Отправитель: keleb-glin
Вопрос № 2488 |
Спецально для "masquer": Номер аси нужен для того что по по почте, долго получается, что нельзя наладить контакт через Асю? Попробуй!Прям сейчас тогда ты мне в "реальном" режиме "-всё и скажешь , что думаешь по этому поводу!!! Попробуй-хотябы!!!P.S Сообразительный чтоли, на подколки!
Приложение:
Вопрос отправлен: 24.01.2003, 17:04
Отправитель: SANDRO (sandro_19@front.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Ayl
Здравствуйте, SANDRO!
Специально для masquer - так и отправляй ему персонально! То же мне крякер новый нашелся - с формой разобраться не можешь!
Кстати насчет контактов через асю - не у всех есть такая возможность, например, на работе...
Ответ отправлен: 24.01.2003, 17:28
Отправитель: Ayl
Отвечает masquer
Приветствую Вас, SANDRO!
Я в курсе, зачем нужен номер аси, я не за то спрашивал, ну да ладно - это раз. Асей я не пользуюсь - это два. В принципе, в предыдущем ответе я уже сказал, что хотел - это три. И четыре, самое главное, я чудовищно сообразительный, и не только на подколки...
Повторюсь - никто детальных мануалов тебе строчить не будет, если тебе это нужно - начни сам разбираться, если (например, для меня) будет видно, что у тебя что-то не выходит - возможно подскажу.
А с самого начала все объяснять - у меня интереса нет, а у тебя денег не хватит на оплату моего времени :)))
Ответ отправлен: 24.01.2003, 17:52
Отправитель: masquer
Отвечает Bob Johnson
Добрый день, SANDRO!
Для тех, кто в танке, повторяю - существует способ отсылать вопросы только одному эксперту.
Ответ отправлен: 25.01.2003, 00:37
Отправитель: Bob Johnson
Форма отправки вопроса |
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.
© 2002 Команда RusFAQ.ru.
Вопрос и дополнение |
Ваш вопрос:
Приложение (если необходимо):
Получить ответов:
Выбор рассылки |
Программисту Assembler (39) C / C++ (30) Perl (7) Delphi (17) Pascal (23) Basic / VBA (13) Java / JavaScript (12) PHP (9) MySQL / MSSQL (8) |
Пользователю Windows 95/98/Me (38) Windows NT/2000/XP (30) "Железо" (34) Поиск информации (20) |
Администратору Windows NT/2000/XP (12) Linux / Unix (14) |
Юристу Гражданское право (9) Семейное право (6) Трудовое право (5) КоАП (4) |
Отправить вопрос всем экспертам выбранной рассылки.
© 2002 Россия, Москва. Авторское право: RusFAQ.ru |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||