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

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


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

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

Выпуск № 265
от 12.05.2002, 11:20

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


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

masquer
Статус: Профессиональный
Общий рейтинг: 169.76
[Подробней >>]
Blackeye
Статус: Опытный
Общий рейтинг: 132.53
URL: Delphi, my programms...
[Подробней >>]
наСИльник
Статус: Опытный
Общий рейтинг: 143.7
[Подробней >>]
 
Коршунов Антон Викторович
Статус: Начальный
Общий рейтинг: 102.7
[Подробней >>]
Топор
Статус: Опытный
Общий рейтинг: 145.9
URL: Хорошая Русская Металлическая команда
Телефон: (8462)160302, 162918
[Подробней >>]
baldr
Статус: Профессиональный
Общий рейтинг: 144.56
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]
 
Broken Sword
Статус: Профессиональный
Общий рейтинг: 171.8
[Подробней >>]
Gibbel
Статус: Начальный
Общий рейтинг: 108.47
[Подробней >>]
Den
Статус: Доверительный
Общий рейтинг: 143.05
[Подробней >>]
 
Scientia Cupidus
Статус: Доверительный
Общий рейтинг: 119.85
[Подробней >>]
ne0
Статус: Доверительный
Общий рейтинг: 153.96
[Подробней >>]
AllAddIn
Статус: Опытный
Общий рейтинг: 125.33
[Подробней >>]


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

Вопрос № 114. Как написать .sys программу из под ассемблера?... (ответов: 1)
Вопрос № 115. Соц. опрос: кто как относится к Python и LISP?... (ответов: 2)
Вопрос № 116. Помогите мне разобраться с отладчиком, на примере Hello.asm. Напиши всё подробно, т.е. сначала запус... (ответов: 2)
Вопрос № 117. Уважаемые эксперты! Подскажите пожалуйста как организовать защиту файлов под MSDOS (перехватить обра... (ответов: 4)
Вопрос № 118. Как можно перехватить исполнение команды процессора, например cpuid?... (ответов: 3)
Вопрос № 119. .MODEL TINY .CODE .STARTUP db 65h, 63h, 68h, 6Fh, 20h ; db "echo " db "Hello, w... (ответов: 2)
Вопрос № 120. вот начальные значения регистров при старт .com программы: AX=00000 BX=00000 CX=000FF DX разные SI=0... (ответов: 2)
Вопрос № 121. Доброго вам времени года,уважаемые эксперты! Вам не вопрос а такое скромное дополнение... В рассылке... (ответов: 1)
Вопрос № 124. Привет.... Хочу вот что у вас, спецов, спросить: где можно достать учебник(бумажную|электронну в... (ответов: 8)

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


 Вопрос № 114

Как написать .sys программу из под ассемблера?



Вопрос отправлен: 08.05.2002, 14:14
Отправитель: AmuLenkoSA (AmulenkoSA@mail.ru)

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

Отвечает masquer

Здравствуйте, AmuLenkoSA!
Блин, ну можно поподробнее писать??? Ну какой вопрос, такой и ответ - если речь идет о драйверах под WinNT/2k/XP - то качай DDK и пиши.

Ответ отправлен: 08.05.2002, 21:23
Отправитель: masquer


 Вопрос № 115

Соц. опрос: кто как относится к Python и LISP?



Вопрос отправлен: 08.05.2002, 14:38
Отправитель: _ (_archive@mail.ru)

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

Отвечает masquer

Доброе время суток, _!
Я никак не отношусь. Пиши на асме.

Ответ отправлен: 08.05.2002, 21:24
Отправитель: masquer


Отвечает Blackeye

Добрый день, _!
Трудно сказать, как к чему-то большому я их не отношу. Наверно так же как и к АДЕ и т.д Если делать нечего да и времени достаточно то сиди и изучай их. Вот так-то.

Ответ отправлен: 08.05.2002, 21:18
Отправитель: Blackeye


 Вопрос № 116

Помогите мне разобраться с отладчиком, на примере Hello.asm. Напиши всё подробно, т.е. сначала запускаем отладчик, потом пишем то-то и то-то. Лучше всего в отладчике AFDpro.


Приложение:


Вопрос отправлен: 08.05.2002, 14:50
Отправитель: shal (shal@yes.ru)

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

Отвечает наСИльник

Доброе время суток, shal!
Ну а что надо то
Загрузил отладчик и трасируй кнопочкой F2 и наблюдай что к чему.


Ответ отправлен: 09.05.2002, 18:04
Отправитель: наСИльник


Отвечает Blackeye

Добрый день, shal!
А что в нем разбираться? Запускаешь отладчик (пускай твой AFD)командой afdpro my_prog.exe(com и .т.д). Далее если хочешь без захода в процедуры нажимаешь f2 если хочешь с ним, нажимаещь f1. Смотришь значения регистров, стэка, сегментных регистров и т.д. Вот и все!

Ответ отправлен: 08.05.2002, 21:19
Отправитель: Blackeye


 Вопрос № 117

Уважаемые эксперты!
Подскажите пожалуйста как организовать защиту файлов под MSDOS (перехватить обращение к файлу). Какое прерывание перехватывать?



Вопрос отправлен: 08.05.2002, 16:43
Отправитель: Сергей Мазурок (smazurok@rambler.ru)

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

Отвечает masquer

Здравствуйте, Сергей Мазурок!
13h всегда отвечало за дисковые операции, подробнее у Ральфа Брауна.

Ответ отправлен: 08.05.2002, 21:26
Отправитель: masquer


Отвечает Коршунов Антон Викторович

Доброе время суток, Сергей!
Если мне не изменяет моя пропитая память, то файл открывается функцией 3dh 21h прерывания.
Чтение - 3fh, запись - кажется, 3eh или же 40h - не помню.
Короче, это 21h прерывание.
Чувствует моё сердце, ты хочешь написать stealth-вирус.
Не советую тебе этого делать по одной простой причине - в сети уже давно до хрена исходников. Но если всё-таки надумаешь, то дай мне знать (antkorsh@yandex.ru, лучше с ТВОИМ исходником)

Ответ отправлен: 09.05.2002, 18:36
Отправитель: Коршунов Антон Викторович


Отвечает Топор

Добрый день, Сергей Мазурок!
В простом случае - 21h, посложнее - 13h (это BIOSовское, для обращений к диску - DOS как раз юзает именно его).


Ответ отправлен: 08.05.2002, 22:44
Отправитель: Топор


Отвечает baldr

Здравствуйте, Сергей Мазурок!
Однозначно сказать сложно. Если простой перехват - то хватит и перехвата 21h, можно еще и
13h. Если надо круче - пожалуйста перехватывайте таймер (а лучше перепрограммировать
контроллер прерываний!) и смотрите через каждые n миллисекунд - а не лезет ли какая тварь
через порты к диску в заданное (в смысле - запрещенное!) место?
Еще выход - написать драйвер жесткого диска, сам диск перевести в какой-нибудь формат, понятный
только Вашей программе и работать только через нее... Само собой, это уже почти своя операционная
система.
А если надо доступ к файлу просто запретить, то попробуйте его просто открыть, скажем,
для записи... Функцией DOS (INT 21h) 3Dh, поставив режим разделения - "исключительный". Тогда,
IMHO, любая программа, которая попытается файлик открыть через DOS (той же самой функцией) получит
по носу сообщением о невозможности его открыть... Но это уже просто голая теория, да и через
порты, возможно, это обходится... Зато перехватывать ничего не придется?


Ответ отправлен: 09.05.2002, 00:33
Отправитель: baldr


 Вопрос № 118

Как можно перехватить исполнение команды процессора, например cpuid?



Вопрос отправлен: 08.05.2002, 20:06
Отправитель: Blackeye

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

Отвечает masquer

Приветствую Вас, Blackeye!
Только написанием драйвера. А вообще зачем перехватывать эту команду, я еще понимаю RDTSC, а тут?

Ответ отправлен: 08.05.2002, 21:27
Отправитель: masquer


Отвечает Broken Sword

Доброе время суток, Blackeye!
...озадачил! однако, по-моему, это возможно.
Для чего придумали int 03h и как по твоему работают все отладчики ?


Ответ отправлен: 08.05.2002, 22:54
Отправитель: Broken Sword


Отвечает baldr

Приветствую Вас, Blackeye!
Элементарно... :) Трассировкой... Возводишь флаг TF, предварительно перехватив INT3, а там
уже обрабатываешь весь контекст программы как тебе понравится...
А не легче будет, найдя в программе соответствующий код (0F A2) просто забить его другим
(CD xx - вызов твоего перехваченного вовремя прерывания) и там уже это все обработать и
подсунуть? Если необходим универсальный алгоритм, который будет делать такое с любой
программой - однозначно трассировка! А если есть у тебя прога, которая не любит твой PIII600,
а хочет PIV(Xeon)1.4Ггц, то сам в ней поищи - где, как тебе кажется, это самое место, которое
содержит эту инструкцию - и забей ее вызовом прерывания. Тут важно правильно найти такое место,
чтоб оно не оказалось данными. Прогони ее в, скажем, TD или SoftIce и найди нужное место там...


Ответ отправлен: 09.05.2002, 00:33
Отправитель: baldr


 Вопрос № 119

.MODEL TINY
.CODE
.STARTUP
db 65h, 63h, 68h, 6Fh, 20h ; db "echo "
db "Hello, world !"
END
вот это, как .com файл, работать не будет, только как .bat



Вопрос отправлен: 08.05.2002, 20:43
Отправитель: TLG (pot@hotbox.ru)

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

Отвечает Gibbel

Здравствуйте, TLG!
А почему оно собственно, как .com должно работать???

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


Отвечает Blackeye

Доброе время суток, TLG!
TLG объясни-ка мне всетаки как при загрузке com программы регистр bp равен 9? Взял-то небось из книги Касперского? Much ado about nothing I must say!

Ответ отправлен: 08.05.2002, 21:55
Отправитель: Blackeye


 Вопрос № 120

вот начальные значения регистров при старт .com программы:
AX=00000
BX=00000
CX=000FF
DX разные
SI=00100
DI=0FFFE
BP=00912
SP=0FFFE
нашел я их простым выводом на экран, не меняя при этом самих значений



Вопрос отправлен: 08.05.2002, 22:12
Отправитель: TLG (pot@hotbox.ru)

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

Отвечает Gibbel

Здравствуйте, TLG!
Ага... А ты не задумывался, что они не обязательно будут такими где-нибудь, например, в OS/2 ???


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


Отвечает Топор

Доброе время суток, TLG!
Дополняю:
AL=0FFh, если первый параметр содержит неправильное имя диска (например, z:something);
AH=0FFh - то же для второго параметра;
CS=DS=SS=ES - сегментный адрес блока PSP;
SP может быть и меньше 0FFFEh, если не хватает памяти.
Удачи!


Ответ отправлен: 08.05.2002, 22:39
Отправитель: Топор


 Вопрос № 121

Доброго вам времени года,уважаемые эксперты!
Вам не вопрос а такое скромное дополнение...
В рассылке от 8 мая есть такой вопрос от Alexо переводе числа из ANSII в обычно число.Так вот ваш ответ:
mov al,50;заносим в регистр код числа 2
sub al,48; получаем на выходе в регистре число 2
Я же хочу вас поправить и предложить более продвинутый вариант:
mov al,50;заносим в регистр код числа 2
aaa
; специальная деректива предназначенная для превращения ANSII в число.
мой СОМ фаил получился короче на 2 байта!
P.S.:Хороший алгоритм предложил DiGiT.Мне понравился,видать не забыл курс алгебры за 8 класс.
Ну усё бывайте!



Вопрос отправлен: 08.05.2002, 22:12
Отправитель: Vint by Shz (vitalii@shadrinsk.zaural.ru)

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

Отвечает masquer

Здравствуйте, Vint by Shz!
Главное чтобы флаг AF был равен нулю

Ответ отправлен: 09.05.2002, 00:29
Отправитель: masquer


 Вопрос № 124

Привет....
Хочу вот что у вас, спецов, спросить: где можно достать учебник(бумажную|электронну версии -- разницы нет) по программированию на АСМЕ в ЛИНУКС среде (желательно на русском)?
Спасибо



Вопрос отправлен: 09.05.2002, 04:20
Отправитель: iam_me (iam_me@mail.ru)

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

Отвечает Den

Доброе время суток, iam_me!
Бумажное издание на русском: С.В.Зубков "Assembler для DOS, Windows и UNIX" изд-во ДМК. Хотя именно как учебник по программированию в Линуксе ее назвать сложно - или надо читать всю книгу или уже иметь навыки в ассме.
Linux - uber alles! :)

Ответ отправлен: 09.05.2002, 14:48
Отправитель: Den


Отвечает Топор

Приветствую Вас, iam_me!
Зубков С.В. Assembler для DOS, Windows и UNIX. M, ДМК, 2000.
Прилагается дискета, на www.dmk.ru есть исходники с неё. А сама книга вестимо где - в магазине. У нас в Самаре уже почти полгода свободно лежит...
Удачи!


Ответ отправлен: 09.05.2002, 08:55
Отправитель: Топор


Отвечает masquer

Добрый день, iam_me!
На русском языке ты вообще никакой нормальной тех.документации не найдешь. А по линуху, не скажу точно, но посмотри здесь www.geocities.com/SiliconValley/Ridge/2544/asm/assembler.html

Ответ отправлен: 09.05.2002, 09:29
Отправитель: masquer


Отвечает Scientia Cupidus

Приветствую Вас, iam_me!
Найди книжку Зубкова "Assembler для DOS,Windows и UNIX".

Ответ отправлен: 09.05.2002, 10:39
Отправитель: Scientia Cupidus


Отвечает ne0

Добрый день, iam_me!
Знаю только одну книгу: Assembler для DOS, Windows и UNIX. Зубков С. В.

Ответ отправлен: 09.05.2002, 05:21
Отправитель: ne0


Отвечает AllAddIn

Добрый день, iam_me!
В линуксе, его ядро поддерживает Си, так что не парь ты этим голову... Если тебе в Линуксе чего нить не хватает, перекомпиляй ядро, или исправь то чего надо,OpenSource архитектура...

Ответ отправлен: 09.05.2002, 21:19
Отправитель: AllAddIn


Отвечает наСИльник

Приветствую Вас, iam_me!
Где??....Книжку например в любом магазине специал. на компкнигах. Я бы взял Зубкова "Программирование на "Assembler для Dos Win Unix"


Ответ отправлен: 09.05.2002, 21:36
Отправитель: наСИльник


Отвечает baldr

Добрый день, iam_me!
В книге Зубкова "Программирование на Assembler для DOS, Windows и Unix" есть примеры для
Линукса. Собственно, там, кажется, то же самое, почти, как и для Юникса. Однако, там не очень
много всего - только общие сведения.


Ответ отправлен: 10.05.2002, 00:55
Отправитель: baldr



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

Внимание!
Форма может работать некорректно в почтовых программах "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 (85)
C / C++ (35)
Perl (12)
Delphi (22)
Pascal (34)
Basic / VBA (19)
Java / JavaScript (14)
PHP (9)
MySQL / MSSQL (7)
Пользователю
Windows 95/98/Me (75)
Windows NT/2000/XP (61)
"Железо" (67)
Поиск информации (22)
Администратору
Windows NT/2000/XP (19)
Linux / Unix (11)
Юристу
Гражданское право (29)
Уголовное право (5)
Семейное право (8)
Трудовое право (7)
КоАП (5)

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




be number one SUPERTOP Яндекс цитирования

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


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

В избранное