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

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


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

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

Выпуск № 518
от 07.04.2003, 18:20

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


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

akul
Статус: Опытный
Общий рейтинг: 116.34
Телефон: +6019-6416245
[Подробней >>]
Tigran K. Kalaidjian
Статус: Начальный
Общий рейтинг: 111.53
[Подробней >>]
Eugene
Статус: Профессиональный
Общий рейтинг: 109.33
URL: мощный файловый архив
[Подробней >>]
 
Beeblebrox
Статус: Профессиональный
Общий рейтинг: 109.22
URL: Beeblebrox / TMA HomePage
[Подробней >>]
Ayl
Статус: Профессиональный
Общий рейтинг: 118.61
[Подробней >>]
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 150.55
URL: Программирование
[Подробней >>]
 
Gibbel
Статус: Профессиональный
Общий рейтинг: 108.3
URL: Страничка обо мне и моих друзьях
Телефон: +7 902 168 02 65
[Подробней >>]
masquer
Статус: Профессиональный
Общий рейтинг: 142.21
[Подробней >>]
Samodelkin
Статус: Доверительный
Общий рейтинг: 133.65
[Подробней >>]
 
Maverick
Статус: Профессиональный
Общий рейтинг: 136.64
URL: Задачи по ассемблеру
Телефон: 89039415024 (BeeLine GSM)
[Подробней >>]
DiGiT[old]
Статус: Профессиональный
Общий рейтинг: 111.56
[Подробней >>]
Broken Sword
Статус: Профессиональный
Общий рейтинг: 124.37
URL: моя рассылка по Protected Mode
[Подробней >>]


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

Вопрос № 2891. Здравствуйте уважаемые тов. Эксперты! Сразу извиняюсь за оффтопик. Но вопрос такой - есть телефон (m... (ответов: 1)
Вопрос № 2892. Здравствуйте, наши духовные лидеры!!! У меня, возможно, банальный, но для меня очень важный вопрос: ... (ответов: 4)
Вопрос № 2893. Здравствуйте. Извените за повторный вопрос того же плана, но получив ответы на прошлый вопрос (за ни... (ответов: 6)
Вопрос № 2894. Какую практическую ценность представляет собственноручно написанная ОС? Тут ведь два пути: 1. Писать... (ответов: 7)
Вопрос № 2895. Уважаемые эксперты не найдется ли у вас самого простого исходника вируса с коментариями заранее спас... (ответов: 5)
Вопрос № 2896. Дополнение к вопросу №2887. Мне нужно узнать полный объём оперативной памяти. При загрузке компьютер... (ответов: 2)
Вопрос № 2897. Здравствуйте. Возможно вопрос оффтопик, но, господа, не подскажете-ли, где взять взломанные Soft Ice... (ответов: 3)

Вопросов: 7, ответов: 28


 Вопрос № 2891

Здравствуйте уважаемые тов. Эксперты!
Сразу извиняюсь за оффтопик. Но вопрос такой - есть телефон (motorolla - но в перспективе не обязательно) - он подсоединён к компьютеру через порт (пока не знаю точно какой... наверно СОМ).
_________________________
Нужно сделать программу которая бы реализовывала напрямую протокол этого телефона который позволяет посылать sms сообщения и так же скачивать с него смс сообщения - ну и естественно удалять их из памяти телефона .
_________________________
Я знаю есть таки проги которые под виндус работают, но они не гибкие - я бы под дос написал свою для начала... Я помню кто-то из экспертов в каком-то вопросе что-тоговорил про интерфейс телефонов... и говорил что он этим сам заниматся, поэтому к вам просьба - не могли бы вы подсказать _РЕСУРСЫ_ где можно найти документацию по телефонам, и разного рода сайты в которых есть туториалы по реализации подобного рода комп-тел интерфейсов (motorolla). Если есть доки - горячая просьбы - вышлите плиз!



Вопрос отправлен: 03.04.2003, 00:38
Отправитель: ed (edsam@spidernet.com.cy)

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

Отвечает akul

Добрый день, ed!
Работа с любым мобильным телефоном - это работа как с обычным модемом, с помощью АТ команд. Все Hayes команды такие же (позвонить, ответить на звонок...). Расширенные функции у каждого свои и описания как правило доступны на сайте производителя телефона. То есть надо отдельно реальзовывать обмен с каждым типом телефона, а зачастую есть разница и в разных моделях одного производителя.
Вот только я не понял, а причем тут ассемблер??

Ответ отправлен: 03.04.2003, 07:50
Отправитель: akul


 Вопрос № 2892

Здравствуйте, наши духовные лидеры!!!
У меня, возможно, банальный, но для меня очень важный вопрос: пытаюсь нарисовать квадрат, но выходит наклонная линия. По логике вроде бы все все сходится. Хэлп ми плз!!! Заранее благодарен Вам.


Приложение:


Вопрос отправлен: 03.04.2003, 00:52
Отправитель: Krishna

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

Отвечает Tigran K. Kalaidjian

Приветствую Вас, Krishna!
Ошибка совсем небольшая - надо вынимать из стека не в том порядке, в каком заносили, а в обратном, т.е. надо заменить
pop ax
pop bx
на
pop bx
pop ax

Ответ отправлен: 04.04.2003, 18:49
Отправитель: Tigran K. Kalaidjian


Отвечает Eugene

Здравствуйте, Krishna!
Ты неправильно работаешь со стэком. Ты пихаешь сначала AX, потом BX. Выбирать же надо в обратном порядке: сначало BX, а потом уже AX, а не наоборот, как у тебя. Из-за этого у тебя AX и BX менялись местами.

Приложение:

Ответ отправлен: 03.04.2003, 09:47
Отправитель: Eugene


Отвечает Beeblebrox

Приветствую Вас, Krishna!
Вместо
pop ax bx
надо
pop bx ax

Ответ отправлен: 03.04.2003, 09:55
Отправитель: Beeblebrox


Отвечает Ayl

Добрый день, Krishna!
А потому, что ты неправильно работаешь со стеком. Смотри, у тебя начале цикла написано:
push ax
push bx
А после того, как ты ставишь точку, выполняешь команды:
pop ax
pop bx
В результате ты не восстанавливаешь значения регистров, а меняешь их. В регистре ax теперь находится число, которое было в регистре bx в начале цикла и наоборот.
Чтобы это исправить нужно написать так:
pop bx
pop ax
Но вообще-то, рисование графики через BIOS - это извращение. Очень медлено. К тому же рисовать прямоугольник по точкам - еще большее извращение.

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


 Вопрос № 2893

Здравствуйте. Извените за повторный вопрос того же плана, но получив ответы на прошлый вопрос (за них огромное спасибо) и оценив ситуацию и мои знания, понял, что одному мне не справиться. Настоящая проблема состоит в следующем: имеется приложение (WIN32 - 2000/XP only), которое после запуска пытается соединиться с некоторым удаленным сервероми получить от него некоторые пакеты (совсем небольшие - буквально несколько байтов), которые программа потом запишет в некоторый участок памяти. Так вот мне надо "отучить" программу от этого. Обнаружив ответственную функцию, и вставив в ее начале ret я добился своего. Но появилась другая проблема - программа в некотором месте обращается к участку памяти, куда по-идее должны были быть записаны пакеты, но так как они туда записаны не были, программа виснет. Я соответствнно хочу каким либо образом забить чем нибудь те места в памяти, откуда идет считывание. Каким образом я могу это сделать?
Заранее благодарен. Ivan.



Вопрос отправлен: 03.04.2003, 01:08
Отправитель: Ivan

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

Отвечает Bob Johnson

Доброе время суток, Ivan!
Смотря где находится это место. Если оно попадает в инициализируемую секцию данных, то можно исправить прямо файл. Но скорее всего так не будет. Тогда ты можешь вместо вот той процедуры, в начало которой ты поставил ret вписать маленький кусочек кода, который бы заносил нужные байты. Если их немного (4 - 12б), то можешь прямо mov использовать, если же больше, то movsd.
Для mov [ds:addr], val можешь просто вписать такие байты:
0C7h 005h addr val
При этом addr и val - это 4-х байтные значения, причем младший байт идет первым. Ну потом проверь в дизассемблере.


Ответ отправлен: 03.04.2003, 23:51
Отправитель: Bob Johnson


Отвечает Eugene

Здравствуйте, Ivan!
Вместо ret вначале немножко измени оригинальную функцию засовывания данных. Вместо данных из сети засовывай свои данные. Или найди место, где программа обращается к этой памяти, и занопь (NOP).

Ответ отправлен: 03.04.2003, 09:50
Отправитель: Eugene


Отвечает Gibbel

Доброе время суток, Ivan!
Лучше вставь вместо "ответственной функции" функцию подгрузки необходимых данных из файла... Или генерации данных, в зависимости от ситуации...

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


Отвечает masquer

Приветствую Вас, Ivan!
Смотря что потом с этими полученными данными происходит - если просто считается какое-то значение, а потом сравнивается с чем-нибудь и после выхода из функции идет типа такого
test eax, eax
jz __bad_guy
то запихивай в начале функции 1 в eax и ret делай. Иначе просто анализируй, что с данными происходит...

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


Отвечает Samodelkin

Добрый день, Ivan!
Для решения этой проблемы тебе нужно знать содержимое пакетов, которые должны придти. Если ты гений - попробуй экстраполировать код

Ответ отправлен: 04.04.2003, 11:43
Отправитель: Samodelkin


Отвечает Maverick

Доброе время суток, Ivan!
Хмм, странный вопрос.
Лучше уж тогда забивать то место, откуда идет обращение, а не куда идет.

Ответ отправлен: 04.04.2003, 12:10
Отправитель: Maverick


 Вопрос № 2894

Какую практическую ценность представляет собственноручно написанная ОС?
Тут ведь два пути: 1. Писать под нее самому, и будет там блокнот,калькулятор, пэйнт и все. Кому оно надо?
Или 2. Обеспечивать совместимость с существующими осями, но тогда или переписывать сто с лишним системных вызовов Линукса
или просто копировать пару сотен строк кода?
Так как можно использовать кустарную ось? Ну, кроме знаний, полученных в процессе написания и удовольствия после.
Или я чего-то не понимаю и все не так грустно?



Вопрос отправлен: 03.04.2003, 07:18
Отправитель: Юзеръ

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

Отвечает Bob Johnson

Приветствую Вас, Юзеръ!
Ну примерно ты прав. Только вот какая фишка есть - чтобы написать самому ось, да еще и калькулятор к ней - это пипец как надо будет париться. Так как тут уже и графический режим нужен и все остальное. Парами сотен строк не обойдешься - тут уже сотни тысяч будут (а может и миллионов).
Самопальная ось может использоваться только (наверное только) в одном случае - если ты делаешь свое устройство в котором ее и применяешь. Скорее всего оно не будет на x86 процессоре, а на чем нибудь вроде pic контроллера. Так что написание ос на х86 - просто получение опыта в этом деле.


Ответ отправлен: 03.04.2003, 23:51
Отправитель: Bob Johnson


Отвечает akul

Доброе время суток, Юзеръ!
Написание ОС преследует несколько целей:
1. Образовательные цели
2. Создание собственной платформы для embedded задач
3. Перестать ругать Била Гейтса :)
4. Просто руки чешутся чего-нить эдакое написать
5. Сделать красивую игрушку для профессионального портфолио. Все-таки мини-операционки всегда производят хорошее впечатление и говорят о квалификации ее разработавшего.

Ответ отправлен: 03.04.2003, 07:53
Отправитель: akul


Отвечает DiGiT[old]

Доброе время суток, Юзеръ!
Знаешь что современные оси содержат десятки миллионов строк кода :). Их разрабатывает не один человек. Так что современную ОС написать в одиночку невозможно(посчитай, что если в день писать по 1000строк, такой я оптимист, то 10к дней поделим на 365дней/год получим 300 лет 8) весело), к тому же за 30 лет много наверное что изменится. Есть второй выход написать микроядрышко(я думаю за полгода реально) и описать все его интерфейсы и пустить в массы то может оно обрастет :). ИМХО зачем переписывать линуз, если с большой долей вероятности не напишешь лучше

Ответ отправлен: 03.04.2003, 09:12
Отправитель: DiGiT[old]


Отвечает Eugene

Приветствую Вас, Юзеръ!
Своя операционка пишется в основном для образовательных целей. Чтобы получше познакомится с железом. Ну и понты можно покидать в нужных местах. Например при приёме на работу. Ну и совсем уж редко пишут для профессионального интереса. Но в этом случае тогда обычно не один человек работает над ней.

Ответ отправлен: 03.04.2003, 09:57
Отправитель: Eugene


Отвечает masquer

Здравствуйте, Юзеръ!
Как использовать? Если напишешь real-time OS (Все винды, кроме Embedded-версий, таковыми не являются), то можно использовать в устройствах, которым нужен этот real-time - датчики, контроллеры etc.
Линукса? :) По-моему всяким линуксам еще долго до софтового разнообразия виндов, так что переписывать прийдется 4 с лишним тысячи основных функций Win32 API.

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


Отвечает Samodelkin

Приветствую Вас, Юзеръ!
Линукс же вырос на чистом энтузиазизме! найди челов, которых заинтересует под твою ось проги писать ... вопросы обратной совместимости решать не надо ... так что тебе будет попроще чем многим нунешним разработчикам распространенных ОС

Ответ отправлен: 04.04.2003, 11:52
Отправитель: Samodelkin


Отвечает Maverick

Здравствуйте, Юзеръ!
В 99% случаях кроме знания тебе это ничем и не светит и еще в 99 такие проекты не доводят до конца, т.к. нет стимула и смысла...


Ответ отправлен: 04.04.2003, 12:10
Отправитель: Maverick


 Вопрос № 2895

Уважаемые эксперты не найдется ли у вас самого простого исходника вируса с коментариями заранее спасибо



Вопрос отправлен: 03.04.2003, 07:42
Отправитель: Pavel (Nifor@mail.kz)

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

Отвечает Tigran K. Kalaidjian

Приветствую Вас, Pavel!
Ушло мылом...

Ответ отправлен: 05.04.2003, 20:09
Отправитель: Tigran K. Kalaidjian


Отвечает Bob Johnson

Приветствую Вас, Pavel!
У меня есть исходник Win95CIH. Высылаю.


Ответ отправлен: 03.04.2003, 23:52
Отправитель: Bob Johnson


Отвечает Eugene

Доброе время суток, Pavel!
Один из самых маленьких вирусов. Комментарии излишни :). Как говорится - искусство!

Приложение:

Ответ отправлен: 03.04.2003, 10:03
Отправитель: Eugene


Отвечает Maverick

Доброе время суток, Pavel!
Да сколько угодно, и простых и сложных, только вот зачем тебе? Если для учебы, то на исходниках трудно учиться, есть туториалы на эту тему. Пиши на Maverick@nightmail.ru


Ответ отправлен: 04.04.2003, 12:10
Отправитель: Maverick


Отвечает Samodelkin

Приветствую Вас, Pavel!
есть тут один журнальчик ... инфектед войс ... смотри мыло

Ответ отправлен: 05.04.2003, 08:47
Отправитель: Samodelkin


 Вопрос № 2896

Дополнение к вопросу №2887. Мне нужно узнать полный объём оперативной памяти. При загрузке компьютера ведь память тестируется и пишется сколько её в системе. Нельзя ли откуда нибудь вытащить это число?



Вопрос отправлен: 03.04.2003, 07:56
Отправитель: Serega (dobeerman@mail.ru)

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

Отвечает DiGiT[old]

Добрый день, Serega!
Нет нельзя. Она считается обычно при загрузке компа. Но многие ОС хранят эту информацию для своего менеджера памяти, и видимо она доступна с помощью АПИ, хотя я может и ошибаюсь

Ответ отправлен: 03.04.2003, 09:04
Отправитель: DiGiT[old]


Отвечает Broken Sword

Добрый день, Serega!
Нет нельзя, любая ось делает то же самое (тестирует память при закрузке)

Ответ отправлен: 03.04.2003, 10:59
Отправитель: Broken Sword


 Вопрос № 2897

Здравствуйте.
Возможно вопрос оффтопик, но, господа, не подскажете-ли, где взять взломанные Soft Ice и Ida Pro. Желательно поновее.
А то поисковики дают только ссылки на кряки.
Любые URLы плз.
Заранее спасибо.


Приложение:


Вопрос отправлен: 03.04.2003, 08:22
Отправитель: Max (Smak@nvkz.kuzbass.net)

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

Отвечает Bob Johnson

Доброе время суток, Max!
Обычно рекомендуют ftp.exetools.com - но чтобы попасть туда надо найти пароль на форуме (www.exetools.com/forum) вроде announcement and news.


Ответ отправлен: 03.04.2003, 23:53
Отправитель: Bob Johnson


Отвечает Gibbel

Добрый день, Max!
www.exetools.com

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


Отвечает Maverick

Доброе время суток, Max!
www.filesearch.ru
Да и искать надо внимательнее, поисковики без проблем все находят.


Ответ отправлен: 04.04.2003, 12:10
Отправитель: Maverick



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

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

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




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

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


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

В избранное