Рассылка закрыта
При закрытии подписчики были переданы в рассылку "RFpro.ru: Ассемблер? Это просто! Учимся программировать" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
RusFAQ.ru: программирование на языке Assembler
Информационный Канал Subscribe.Ru |
RusFAQ.ru: программирование на языке Assembler
Выпуск № 600
от 26.07.2003, 19:50
Администратор: Имя: Калашников О.А. URL: Информационный ресурс ICQ: 68951340 Россия, Москва |
О рассылке: Задано вопросов: 3793 Отправлено ответов: 11141 Активность: 293.7 %
|
Список экспертов, ответы которых опубликованы в данном выпуске |
Tigran K. Kalaidjian Статус: Профессиональный Общий рейтинг: 123.61 URL: Методы оптимизации работы ПК [Подробней >>] |
Ayl Статус: Профессиональный Общий рейтинг: 118.21 [Подробней >>] |
Евгений Иванов Статус: Опытный Общий рейтинг: 142.28 URL: Super Assembler Software [Подробней >>] |
Hangatyr Статус: Опытный Общий рейтинг: 114.54 [Подробней >>] |
Bob Johnson Статус: Профессиональный Общий рейтинг: 152.27 URL: Программирование [Подробней >>] |
Lynx Статус: Опытный Общий рейтинг: 118.23 Телефон: (8442) 750522 [Подробней >>] |
Broken Sword Статус: Профессиональный Общий рейтинг: 121.48 URL: мой сайт [Подробней >>] |
Zedr0n Статус: Доверительный Общий рейтинг: 108.63 [Подробней >>] |
Gibbel Статус: Профессиональный Общий рейтинг: 107.71 URL: Savage Metal Club - жизнь в стиле рок-н-ролл Телефон: +7 901 710 3146 [Подробней >>] |
_vt Статус: Профессиональный Общий рейтинг: 120.66 [Подробней >>] |
baldr Статус: Профессиональный Общий рейтинг: 112.04 URL: Сайт об ОС DOS. Всем, кто любит эту ОС! [Подробней >>] |
getoff Статус: Начальный Общий рейтинг: 108.82 [Подробней >>] |
Andrew Vext Статус: Профессиональный Общий рейтинг: 105.06 [Подробней >>] |
Краткий перечень вопросов |
Вопрос № 3751. рассссьти)) вы уж извините меня за новящевость, ну как говориться:дорвался)) у меня еще один вопроси... (ответов: 6)
Вопрос № 3752. Здравствуйте, уважаемые эксперты! Вот хочу спросить не занимается ли кто из вас таким извращением, к... (ответов: 3)
Вопрос № 3753. Здравствуйте! Кто может подсказать, где можно найти официальные (легальные)версии ассемблера, и с (С... (ответов: 2)
Вопрос № 3754. Какие есть редакторы для написания программ, которые лучше(удобнее) QEditor(входит в комплект постав... (ответов: 5)
Вопрос № 3755. всем привет! поступило много прозьб скинуть на мыло найденные 256-демки. Их все можно взять на www.2... (ответов: 3)
Вопрос № 3756. всем привет! точки, линии, окружность, элипсы и подобны приметивы рисовать програмным способом на ас... (ответов: 4)
Вопрос № 3758. Здравствуйте! Я не Московский - из Ульяновска! Есть ли у нас официальные представительства каких-ниб... (ответов: 1)
Вопрос № 3759. Здравствуйте, уважаемые эксперты. Как сделать окошко (известен hWnd) полупрозрачным(50%; пример лучш... (ответов: 3)
Вопросов: 8, ответов: 27
Вопрос № 3751 |
рассссьти))
вы уж извините меня за новящевость, ну как говориться:дорвался))
у меня еще один вопросик, может я покажусь тупым, но уж лучше показаться таким, чем быть на самом деле, а??
вопрос опять таки на счет учебника И. Калашникова по ассу
он везде советует везде использовать отладчик, компилируйте мол, и смотрите в отладчике, но что именно смотреть, обьясните мне, а? я вот открываю его и как боран на новые ворота, тыкаю на F1 ну вижу, что регистры изменяются, а толку-то(((...
заранее спасибо!
Вопрос отправлен: 21.07.2003, 18:24
Отправитель: Poma
[Следующий вопрос >>] [Список вопросов]
Отвечает Tigran K. Kalaidjian
Добрый день, Poma!
1. Вопрос не может быть тупым, если он задан ради познания.
2. Отладчик позволяет выполнять программу ПОШАГОВО, т.е. следить за результатом выполнения каждой инструкции, что дает возможность пощупать код. Во многих случаях отладчики помогают найти т.н. логические ошибки, за исправление которых не отвечают (и не могут отвечать) компиляторы. Их нахождение всецело лежит на программисте.
Также отладчики холошо помогают при взломе программ.
А вот насчёт толка... Гм... Даже и не знаю. Я, лично, вообще не пользовался отладчиками на заре своей программистской деятельности, прокручивал в голове ход программы - может оно и лучше, но научится работать в отладчике очень полезно - может пригодиться для разработки больших программ.
Ответ отправлен: 21.07.2003, 22:59
Отправитель: Tigran K. Kalaidjian
Отвечает Ayl
Добрый день, Poma!
Во-первых, давай определимся, для чего ты запускаешь отладчик. Вариантов, на мой взгляд, может быть два:
1. Найти ошибку в программе
2. Разобраться, как она вообще работает
Если ты писал на ЯВУ, то скорее всего пользовался стандартными средствами отладки в интегрированной среде - смотрел значения переменных, логику вызовов процедур и функций, состояние стека и т.п. Так на асме тоже самое!
Запускаешь отладчик и смотришь, как выполняется прога. Смотришь состояние регистров, изменение областей памяти, состояние стека.
Что именно - зависит от того, чего ты хочешь достигнуть. Например, я тут недавно написал на асме модуль для рисования окошек в текстовом режиме. В связке с Паскалем. Вроде отладил, все работает. Но стоило мне добавить еще одну процедурку в паскалевский модуль - и прога вылетела с ошибкой. Что делать? Можно тупо смотреть на исходный текст - скорее всего, все равно ошибку не найдешь - глаз замылен да и предположения в голове строишь... Полез в отладчик. Добрался до своей процедуре на асме - смотрю, а у меня запись-то в видеосегмент не идет - забыл установить сегментный регистр! Времени на поимку глюка ушло минут пять.
Как смотреть. На первых порах можно пошагово, проверяя на каждом шаге состояние регистров. Со временем научишься ускорять этот процесс, пользоваться контрольными точками, пропуском циклов, процедур и т.п. Опыт - дело наживное!
Ответ отправлен: 21.07.2003, 18:56
Отправитель: Ayl
Отвечает Евгений Иванов
Приветствую Вас, Poma!
Ну если ты не понимаешь, зачем это нужно, тогда лучше и не используй
отладчик!
Может, ты гений-программист!
Иногда даже я сам верчусь по кругу, вот тогда запускаю TD, и всё встаёт на
свои места!
Ответ отправлен: 21.07.2003, 18:56
Отправитель: Евгений Иванов
Отвечает Hangatyr
Доброе время суток, Poma!
Странный вопрос - в том-то и есть смысл отладки - посмотреть, что находится в регистрах/памяти во время исполнения, найти баги и т.д. Если хочешь программировать, то без отладчика никуда...
Ответ отправлен: 21.07.2003, 18:57
Отправитель: Hangatyr
Отвечает Bob Johnson
Добрый день, Poma!
> может я покажусь тупым, но уж лучше показаться таким, чем быть на самом деле, а
С точностью до наоборот - встречают по одежке (помнишь?), а то, туп ли ты на самом деле никто может и не узнать. :)
> но что именно смотреть
Код, который получается. Там можно смотреть, как выполняются команды и как меняются при этом значения переменных и регистров.
* EMan1.5: ---===*** The hell we've created ourselves ***===---
Ответ отправлен: 22.07.2003, 00:28
Отправитель: Bob Johnson
Отвечает Lynx
Доброе время суток, Poma!
Ты не туда смотришь. :))) Смотреть надо не на то, что регистры меняются, а на то, как они меняются и что из этого получается. Так же можно смотреть на дамп программы и на то, как изменяется сегмент кода, даных, стека... Но отладчик лучше использовать, тогда когда программа не хочет корректно работать. Тогда надо разобраться как она фунциклирует, найти и пофиксить этот баг. :)))
Ответ отправлен: 25.07.2003, 11:15
Отправитель: Lynx
Вопрос № 3752 |
Здравствуйте, уважаемые эксперты!
Вот хочу спросить не занимается ли кто из вас таким извращением, как программирование под
Linux на асме? Да точно знаю, что кто-то занимается ;))) Признавайтесь кто.
Спасибо за внимание.
Вопрос отправлен: 21.07.2003, 19:07
Отправитель: Dr.Lk
[Следующий вопрос >>] [Список вопросов]
Отвечает Broken Sword
Здравствуйте, Dr.Lk!
ну я страдал когда то... на сайте есть исходники по IPC (даже по TCP/IP). Кроме того, выкачал когда то все имеющиеся по этому вопросу моменты (таких в нете оказалось поверь мне ну ОЧЕНЬ немного...)
Ответ отправлен: 21.07.2003, 23:24
Отправитель: Broken Sword
Отвечает Евгений Иванов
Приветствую Вас, Dr.Lk!
Я скоро установлю Red Hat Linux 9 и буду обязательно изучать, как
использовать Ассемблер при создании программ для Linux!
Ответ отправлен: 21.07.2003, 19:16
Отправитель: Евгений Иванов
Отвечает Zedr0n
Доброе время суток, Dr.Lk!
Ну, не такое уж это страшное извращение. По сути дела чистое программирование на асм'е под Linux - это вызов функций 80-го прерывания. Подробнее можно почитать у Зубкова, также материалы есть на www.linuxassemby.org...
Ответ отправлен: 24.07.2003, 11:31
Отправитель: Zedr0n
Вопрос № 3753 |
Здравствуйте!
Кто может подсказать, где можно найти официальные (легальные)версии ассемблера, и с (С++) у нас в России?
Вопрос отправлен: 21.07.2003, 22:47
Отправитель: Искатель
[Следующий вопрос >>] [Список вопросов]
Отвечает Gibbel
Здравствуйте, Искатель!
В магазинах... ;-)
Вообще, можешь купить лицензионку VS.NET - там и сишка и асм есть... Только последнее в очень скудном количестве.
Ответ отправлен: 22.07.2003, 09:41
Отправитель: Gibbel
Отвечает Hangatyr
Приветствую Вас, Искатель!
Купить у M$, где же еще? В любом другом случае они перестанут быть легальными. Можно еще подписаться на MSDN - туда входят MASM, MSVC, DDK и еще много чего, но все это за деньги, конечно.
Ответ отправлен: 22.07.2003, 06:55
Отправитель: Hangatyr
Вопрос № 3754 |
Какие есть редакторы для написания программ, которые лучше(удобнее) QEditor(входит в комплект поставки masm32)?
Вопрос отправлен: 22.07.2003, 07:36
Отправитель: Xych
[Следующий вопрос >>] [Список вопросов]
Отвечает _vt
Доброе время суток, Xych!
Лучше всего - встроенный редактор FAR Manager с плагином Colorer4ever!!!
---===*** E-Man 1.4 - waiting for 1.5...***===---
Ответ отправлен: 23.07.2003, 11:12
Отправитель: _vt
Отвечает baldr
Добрый день, Xych!
Я использую TASMED from Sergey Chehuta
Ответ отправлен: 23.07.2003, 14:11
Отправитель: baldr
Отвечает Hangatyr
Добрый день, Xych!
IDE ты имеешь в виду? Их довольно много, надо выбирать, что больше по вкусу. Могу посоветовать RadAsm - очень неплох. Можно использовать также MS DevStudio. Лично я пользуюсь последним вариантом.
Ответ отправлен: 22.07.2003, 07:50
Отправитель: Hangatyr
Отвечает Bob Johnson
Здравствуйте, Xych!
FAR, FAR и еще раз FAR!!! Можно, конечно, заморачиваться с ide, но, в принципе, для асма это не нужно... про то, как компилить файлы см. на моей странице (faq): http://bobjohnson.nm.ru
* EMan1.5: ---===*** The hell we've created ourselves ***===---
Ответ отправлен: 22.07.2003, 13:39
Отправитель: Bob Johnson
Отвечает Евгений Иванов
Здравствуйте, Xych!
Встроенный в FAR! Самый лучший, а при использовании макросов его можно
настроить до невообразимых пределов.
Ответ отправлен: 22.07.2003, 17:29
Отправитель: Евгений Иванов
Вопрос № 3755 |
всем привет!
поступило много прозьб скинуть на мыло
найденные 256-демки.
Их все можно взять на www.256b.com
Или все в одном файле на
http://medevalsoft.by.ru/demo.zip
Вопрос отправлен: 22.07.2003, 09:56
Отправитель: Zensor_ (zasm@mail.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Ayl
Доброе время суток, Zensor_!
Отправил в рассылку.
Ответ отправлен: 22.07.2003, 10:44
Отправитель: Ayl
Отвечает Евгений Иванов
Приветствую Вас, Zensor_!
Бегу скачивать!
Ответ отправлен: 22.07.2003, 17:29
Отправитель: Евгений Иванов
Отвечает getoff
Здравствуйте, Zensor
СПАСИБО))))
Ответ отправлен: 24.07.2003, 00:53
Отправитель: getoff
Вопрос № 3756 |
всем привет!
точки, линии, окружность, элипсы и подобны
приметивы рисовать програмным способом на асме умею,
с палитрой почти разобрался.
Можно изменить палитру только определенной точки?
Вопрос отправлен: 22.07.2003, 09:59
Отправитель: Zensor_ (zasm@mail.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Ayl
Добрый день, Zensor_!
Можно :-) Заменив ее цвет.
Это, на самом деле, полушуточный ответ.
Похоже, ты немного не разобрался в понятиях.
Пусть у нас есть некий графический режим. Допустим, 320*200, 256 цветов.
Что из себя представляет экран? Это множество точек (в конкретном режиме - 64000), имеющих определенный цвет. Каким именно образом кодируется цвет нас сейчас не интересует, главное, что каждой точке приписывается некоторое значение из диапазона 0-255 (1 байт), которое обычно и называют цветом, хотя это и неверно.
На самом деле это число представляет собой индекс регистра палитры. Всего регистров - 256. Каждый регистр содержит информацию о пропорциях красной, синей и зеленой составляющих (RGB).
В результате, если ты изменяешь "цвет" точки (номер регистра палитры), то на экране изменяется только эта единственная точка. Если же ты изменяешь значение регистра палитры, то на экране одновременно изменяют свой цвет все точки, которые имеют этот номер палитры.
Так что изменить палитру только для одной точки можно только при условии, что она будет у тебя одна иметь выбранный номер палитры.
Работа с палитрой допускается только в режимах с количеством цветов не более 256 на адаптерах не хуже EGA. В режимах HiColor и TrueColor пропорции RGB указываются непосредственно при описании точки.
Ответ отправлен: 22.07.2003, 11:12
Отправитель: Ayl
Отвечает Andrew Vext
Приветствую Вас, Zensor_!
палитра существует в 256-цветном режиме и действует для всего изображения в целом. Можно изменить цвет точки, а палитру можно изменить только для вего экрана (при изменении цвета в палитре поменяются все точки с данным цветом).
Ответ отправлен: 22.07.2003, 10:55
Отправитель: Andrew Vext
Отвечает Евгений Иванов
Доброе время суток, Zensor_!
Точка имеет свой цвет или номер, например в 256-цветном режиме код от 0 до
255.
Берёшь и меняешь палитру для этого кода.
Если 16-млн цветов - там нет палитры, там код - это и есть цвет.
4 байта - BGR и 1 байт не используется.
Ответ отправлен: 22.07.2003, 17:29
Отправитель: Евгений Иванов
Отвечает getoff
Уважамый Zensor_ если я вас правильно понял вы хотите изменить цвет некоторой точки путем работы с палитрой. Такого преобразования сделать нельзя! Если вы измените некоторый цвет в палитре, то все точки окрашенные данным цветом изменяться
Ответ отправлен: 24.07.2003, 00:44
Отправитель: getoff
Вопрос № 3758 |
Здравствуйте!
Я не Московский - из Ульяновска!
Есть ли у нас официальные представительства каких-нибудь фирм, где можно было-бы заказать Ассемблер, С++ буилдер, узнать о цене и всё такое? :-)
Заранее спасибо!
Вопрос отправлен: 22.07.2003, 13:34
Отправитель: Искатель
[Следующий вопрос >>] [Список вопросов]
Отвечает baldr
Доброе время суток, Искатель!
Как видно из ответов, никто не знает... :(
Ответ отправлен: 23.07.2003, 14:58
Отправитель: baldr
Вопрос № 3759 |
Здравствуйте, уважаемые эксперты. Как сделать окошко (известен hWnd) полупрозрачным(50%; пример лучше на MASM32)?
Вопрос отправлен: 22.07.2003, 19:49
Отправитель: PRO (p-r-o@mail.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Tigran K. Kalaidjian
Здравствуйте, PRO!
Проблема в том, что механизм перерисовки окон в Windows не предусматривает создания полупрозрачных окон, поэтому прийдется идти в обход.
Надо временно убрать наше окно, дождаться перерисовки всех низлежащих, сохранить то место, которое будет закрыто нашим окном, вновь вывести его на экран и отрисовать его с учётом сохранённой картинки(можно затемнять картинку, чтобы была "полупрозрачность", а не "прозрачность").
Пример на Delphi (с коментариями) ушел на мыло. На MASM, ИМХО, несложно будет перевести, главное понять принцип...
Ответ отправлен: 23.07.2003, 10:13
Отправитель: Tigran K. Kalaidjian
Отвечает Bob Johnson
Добрый день, PRO!
1. При создании окна указываешь доп. стиль WS_EX_LAYERED. Если окно уже создано, то изменяешь его доп. стиль так, чтобы был WS_EX_LAYERED (SetWindowLong, кажется или как-то еще). Если он уже был, то изменяешь так, чтобы вначале не было, а потом снова был.
2. Call SetLayeredWindowAttributes, [HWnd], 0, 128, LWA_ALPHA
* EMan1.5: ---===*** The hell we've created ourselves ***===---
Ответ отправлен: 23.07.2003, 01:02
Отправитель: Bob Johnson
Отвечает Gibbel
Приветствую Вас, PRO!
Посмотри здесь.
Ответ отправлен: 23.07.2003, 09:16
Отправитель: Gibbel
Форма отправки вопроса |
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.
(C) 2002-2003 Команда RusFAQ.ru.
Вопрос и дополнение |
Ваш вопрос:
Приложение (если необходимо):
Получить ответов:
Выбор рассылки |
Программисту Assembler (33) C / C++ (24) Perl (4) Builder / Delphi (19) Pascal (22) Basic / VBA (11) Java / JavaScript (12) PHP (9) Криптография (8) WinAPI (13) |
Пользователю Windows 95/98/Me (47) Windows NT/2000/XP (42) "Железо" (39) Поиск информации (25) |
Администратору Windows NT/2000/XP (24) Linux / Unix (10) |
Юристу Гражданское право (11) Семейное право (6) Трудовое право (9) КоАП (5) |
Отправить вопрос всем экспертам выбранной рассылки.
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||