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

Ассемблер? Это просто! Учимся программировать


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 543
от 12.09.2006, 15:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 347, Экспертов: 32
В номере:Вопросов: 8, Ответов: 9


Вопрос № 54546: Доброго времени суток уважаемые эксперты. В пяток уроке Iczelion’a в обработке WM_PAINT(в самом конце) перед самым закрытием контекста мы зачем-то выделяем(SelectObject) шрифт. Зачем мы это делаем. Заранее благодарю, уважаемые эксперты ...
Вопрос № 54547: Доброго времени суток уважаемые эксперты. Вот функция DeleteObject что там за параметр надо указывать. Спасибо. ..
Вопрос № 54548: Доброго времени суток уважаемые эксперты. Как сделать клиентскую часть другим цветом, что именно надо писать в wc.hbrBackground.(кроме белого и серого цвета) Спасибо. ...
Вопрос № 54549: Здравствуй уважаемый эксперт. Что такое ЗАГРУЗЧИК, для чего он нужен. Спасибо. ...
Вопрос № 54565: Добрый день! пытаюсь создать ДЛЛ-библиотеку на асме. использую тасм. Пишу на основе туториалов Iczelion'а. Там прога вроде бы на масм. Выкинул из проги все строки, на которые ругался тасм. не получается создать рабочую библиот...
Вопрос № 54579: Доброго дня! Уверен что этот вопрос уже задавали в той или иной форме. Что лучше использовать fasm, masm, masm32, tasm, goasm, wasm и так далее? По моему все они бесплатные, в чем их основные отличия, и какие из них поновей, то есть будут...
Вопрос № 54584: Здравствуйте, уважаемые! Подскажите, пожалуйста, где можно найти в сети инфу по написанию DOS-драйвера консоли (лучше клавиатуры и экрана по отдельности). Или книгу стоящую подскажите. Или у вас на винте, может, что-нибудь подобное заваляло...
Вопрос № 54596: Схемка на Atmel - AT89S51. Не получаеться запрограммировать порт ни на вывод бита, ни на прием :(. Может у кого-нибуть есть примеры, как это делается (на Keil, C51, A51, или ссылки на описание). Заранее спасибо за ответ:)....

Вопрос № 54.546
Доброго времени суток уважаемые эксперты.
В пяток уроке Iczelion’a в обработке WM_PAINT(в самом конце) перед самым закрытием контекста мы зачем-то выделяем(SelectObject) шрифт. Зачем мы это делаем.
Заранее благодарю, уважаемые эксперты
Отправлен: 06.09.2006, 20:07
Вопрос задал: ENS (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Волков Павел Юрьевич
Здравствуйте, ENS!
функцией CreateFont мы создаем объект "Шрифт", через SelectObject выбираем его из "контекста устройства" и далее назначаем цвет шрифту (SetTextColor). Т.о. SelectFont нужен для выделения необходимого объекта из пространства имен в "контексте устройства".
---------
Век живи, век учись.
Ответ отправил: Волков Павел Юрьевич (статус: 7-ой класс)
Ответ отправлен: 07.09.2006, 09:00


Вопрос № 54.547
Доброго времени суток уважаемые эксперты.
Вот функция DeleteObject что там за параметр надо указывать.
Спасибо.
Отправлен: 06.09.2006, 20:07
Вопрос задал: ENS (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лысков Игорь Витальевич
Здравствуйте, ENS!
Смотри цитату MSDN в приложении...

Приложение:

---------
Удачи!

Ответ отправил: Лысков Игорь Витальевич (статус: Студент)
Ответ отправлен: 06.09.2006, 20:42


Вопрос № 54.548
Доброго времени суток уважаемые эксперты.
Как сделать клиентскую часть другим цветом, что именно надо писать в wc.hbrBackground.(кроме белого и серого цвета)
Спасибо.
Отправлен: 06.09.2006, 20:07
Вопрос задал: ENS (статус: 1-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лысков Игорь Витальевич
Здравствуйте, ENS!
Смотри приложение.
Если по русски:
1) можно писать либо любую из констант COLOR_ +1
2) либо создать кисть

PS Читай MSDN! Без этого ты далеко не продвинешься.
У тебя таких вопросов будет валом. Учись самостоятельно находить ответы.

Приложение:

---------
Удачи!

Ответ отправил: Лысков Игорь Витальевич (статус: Студент)
Ответ отправлен: 06.09.2006, 20:38

Отвечает: mix_mix
Здравствуйте, ENS!
Дополню: если не нравятся стандартные цвета, создаете кисть функцией CreateSolidBrush, в качестве параметра указываете 32-битное число. Число идет в формате 00bbggrr, где b-иненсивность синего цвета (от 0 до FF), gg-зеленого, rr-красного.
Ответ отправил: mix_mix (статус: 6-ой класс)
Ответ отправлен: 06.09.2006, 20:50


Вопрос № 54.549
Здравствуй уважаемый эксперт.
Что такое ЗАГРУЗЧИК, для чего он нужен.
Спасибо.
Отправлен: 06.09.2006, 20:08
Вопрос задал: ENS (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: mix_mix
Здравствуйте, уважаемый ENS!
Не совсем понятно, о каком загрузчике идет речь, поэтому напищу о всех сразу.
Загрузка с жесткого диска начинается с попытки чтелия первого сеткора нулевой головки нулевого цилиндра, но здесь ищется загрузчик MBR (Master Boot Record) с таблицей разделов диска. Этот загрузчик должен найти описатель активного раздела, загрузить в память его первый сектор и, убедившищь в том, что в нем находится как раз тот самый загрузчик, передать ему управление. Этот загрузчик и должен загрузить
операционную систему из выбранного (или активного) раздела в память и передать ей управление. Конкретное описание того, что делает главный загрузчик операционной системы невозможно из-за различии архетиктуры ядер операционных систем. В большинстве случаев, он переключает процессор в защищенный режим, сохраняет GDT, LDT, IDT... Но это уже немного не в тему :) Скорее всего имелся ввиду второй загрузчик. Этот загрузчкик не более, чем почти обычная программа, которая может быть совершенно разной (от Виндовского - белые буквы на черном фоне, до графического GRUB в Linux). Надеюсь, я ответил на Ваш вопрос (также надеюсь, что написано не очень сложным для Вас языком).
Ответ отправил: mix_mix (статус: 6-ой класс)
Ответ отправлен: 06.09.2006, 21:08


Вопрос № 54.565
Добрый день!
пытаюсь создать ДЛЛ-библиотеку на асме.
использую тасм.
Пишу на основе туториалов Iczelion'а.
Там прога вроде бы на масм.
Выкинул из проги все строки, на которые ругался тасм.
не получается создать рабочую библиотеку.
Создаётся ДЛЛ-файл, но сишная прога не может с ним работать.

я чуствую что какая-то заковыка с kernel32.lib, надо бы вроде его подключать, я и подключаю, а всё равно ДЛЛ не работает.
Подскажите что делать, где читать.

Приложение:

Отправлен: 06.09.2006, 22:37
Вопрос задал: Вiктор (статус: 6-ой класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: mix_mix
Здравствуйте, Вiктор!
Что-то вроде этого. Давно на масме не писал, переходите на фасм =)
Создаете файл dll1.def, пишете в него: "EXPORTS test".
Ассемблируете: ml /c /coff dll1.asm
Линкуете: link /subsystem:windows /dll /entry:dllentry /def:dll1.def dll1.obj
Проверяете: rundll32 dll1.dll,test This is a test
По идее, если я ничего не напутал, должен появится MessageBox со строкой "This is a test".
Удачи!

Приложение:

Ответ отправил: mix_mix (статус: 6-ой класс)
Ответ отправлен: 06.09.2006, 22:57
Оценка за ответ: 5
Комментарий оценки:
Спасибо, хороший ответ. После небольшой модификации я получил то, что мне было нужно. А ещё я для себя решил плюнуть на ТАСМ (читал рассылку) и окончательно перейти на другие *АSМы. Сделал всё на МАSМ. Но вообще я МАСМ не люблю, надо учить FАSМ (или NАSМ, не знаю)


Вопрос № 54.579
Доброго дня!
Уверен что этот вопрос уже задавали в той или иной форме.
Что лучше использовать fasm, masm, masm32, tasm, goasm, wasm и так далее?
По моему все они бесплатные, в чем их основные отличия, и какие из них поновей, то есть будут ли поддерживаться ближайшие пяток лет и какие самые перспективные? Спасибо.
Отправлен: 07.09.2006, 02:06
Вопрос задал: Эдвардас (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Волков Павел Юрьевич
Здравствуйте, Эдвардас!
смотрите, что Вам удобней.
Я бы посоветовал FASM: компактный (дистрибутив не более метра), переносимый (есть дистрибутивы под Windows, Linux и дистрибутивы Unix поддерживающие формат файлов ELF ), постоянно развивается (цитата с сайта: "last update: 20 August 2006"), большое комьюнити (на большинство вопросов можно найти ответ на форуме http://board.flatassembler.net/ ) и следовательно поддержка большого количества файловых форматов (COFF OBJ, PE, ELF, MZ), т.е. позволяет создавать как 16bit, так и 32bit код. А также OpenSource.

WASM вообще не компилятор (или очень секретный :)).

GoASM, есть своя комьюнити, но широко не распространен.

TASM, проект больше не поддерживается, на нем пишут по привычке, ведь раньше это был один из широко используемых компиляторов.

MASM, для создания 16bit программ, практически не найти, официально он не поддерживается.

MASM32 содержит много примеров, документации. Существует, исторически сложившаяся, обширная комьюнити (http://www.masm32.com/board/index.php?). Уроки Iczelion'a опять же на нем. Поддерживается пользователями.
---------
Век живи, век учись.
Ответ отправил: Волков Павел Юрьевич (статус: 7-ой класс)
Ответ отправлен: 07.09.2006, 10:01


Вопрос № 54.584
Здравствуйте, уважаемые!

Подскажите, пожалуйста, где можно найти в сети инфу по написанию DOS-драйвера консоли (лучше клавиатуры и экрана по отдельности). Или книгу стоящую подскажите. Или у вас на винте, может, что-нибудь подобное завалялось?
Некоторая теоретическая основа мне известна, стало быть можно просто исходники (вообще кайф, если с комментариями), не очень сложные (даже, я бы сказал, простейшие), чтобы неискушенный в этом деле мог разобраться. Win32 не предлагать.

Благодарю за понимание и помощь!
Отправлен: 07.09.2006, 05:26
Вопрос задал: Aliasman (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Лысков Игорь Витальевич
Здравствуйте, Aliasman!
Загляни сюда
http://www.programmersheaven.com/download/1399/download.aspx
---------
Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: Студент)
Ответ отправлен: 07.09.2006, 11:18
Оценка за ответ: 5
Комментарий оценки:
Спасибо! Сижу, пытаюсь разобраться. Только вот my english is very poor :(


Вопрос № 54.596
Схемка на Atmel - AT89S51. Не получаеться запрограммировать порт ни на вывод бита, ни на прием :(. Может у кого-нибуть есть примеры, как это делается (на Keil, C51, A51, или ссылки на описание). Заранее спасибо за ответ:).
Отправлен: 07.09.2006, 09:16
Вопрос задал: ADSota (статус: Специалист)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Mihasic
Здравствуйте, EPDSota!
Посмотри тут:
http://www.atmel.com/dyn/general/advanced_search_results.asp?device=1&tools=1&faqs=1&datasheets=1&appNotes=1&userGuides=1&software=1&press=1&articles=1&flyers=1&checkAll=1&checkAllReference=1&target=AT89S51

Еще у меня на кафедре на фтп были когда-то доки:
ftp://kipeva.ntu-kpi.kiev.ua/Uchebka/Kornev%20V.%20P/3_kurs/2_semestr/

Если сильно нужно, то дома у меня могли остаться какие-то доки, лабы...

Кстати, вывод идет не по одному биту (реально конечно по одному), а по 8-9 бит в зависимости от режима.
Ответ отправил: Mihasic (статус: 7-ой класс)
Ответ отправлен: 07.09.2006, 14:51


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

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

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.36 от 06.09.2006
Яндекс Rambler's Top100

В избранное