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

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


Служба Рассылок Subscribe.Ru

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

Выпуск № 219
от 18.03.2002, 02:05

Администратор: Калашников Олег
Сайт Администратора: Программирование на Ассемблере


Старейшины рассылки
(по состоянию на 18.03.2002, 02:05)

1. Broken Sword - ответов: 395.
2. Painbringer (нечто наподобие домашней страницы) - ответов: 371.
3. Sensey - ответов: 326.
4. Dron (Операционная система с нуля!) - ответов: 267.
5. DiGiT - ответов: 265.


Новости

[17.03] Эксперту Guess Who присвоен статус "Продвинутый".
[17.03] Эксперту masquer присвоен статус "Профессиональный".


 Вопрос № 228

Есть у меня почтовый ящик на HotBox и был он установлен на получение почты по протоколу IMAP4(Кстати чем отличается IMAP4 от POP3? и какие вообще протоколы еще существуют) на сервере под почтовый ящик отводится 20Mb, исчерпались эти 20Mb, ну я залез на него через броузер и поудалял письма, а когда я начала доставлять через Outlook Express5 почту то письма то все которые я удалял на серевере удалились и на моём компьютере, в технической поддержке HOTBOX порекомендавали пользоваться POP3, чтобы письма не оставляли копии на сервере что я и сделал. Проблема: письма которые я удалил у меня храняться в копии, могу ли я их как нибудь подключить к моей новой учётной записи созданной по протоколу POP3 их порядка 20Mb 800 штук, чтобы все письма были в одной папке?
Отправитель: ВВ (victorv@pochtamt.ru)
Вопрос отправлен: 13.03.2002, 04:16
Подгруппа: Пользовательская работа с Windows

_______________

Отвечает VladK
Приветствую Вас, ВВ!
В Аутлуке Файл->Импорт.
Поэкспериментируй там: или импорт адресной книги, или импорт сообщений.
С ув.


Отправлено: 13.03.2002, 11:55
Отправитель: VladK (регистрация: 11/03/2002, ответов на счету: 6)
Student
Россия, Свердловская обл.




 Вопрос № 229

Здорово всем.
Подскажите самое простое. Как называется запускающийся файл в ассемблере? Сделайте со всеми коментариями программу(самую простую) и напишите как сохранить, как запустить(весь алгоритм). Заранее благодарен.

Отправитель: tun (tun@mailru.com)
Вопрос отправлен: 13.03.2002, 06:37
Подгруппа: Работа с MASM/TASM

_______________

Отвечает DiGiT
Приветствую Вас, tun!
Начинащий значит. Если ты терпеливый, то постигнешь этот самый рульный язык. Совет: приобрети книгу какую нить.
Я опишу как компилировать в Turbo Assembler'e.
tasm filename.asm [ключи, пока не обращай внимания]
tlink filename.obj [ключи,где /t слинковать com файлом]
Это под дос. А под виндой сначала научись под дос.
И это не дело юзай какой нить хелп, иначе не научишься ничему.
Мне просто что то вопросы не ходили неделю, а твое первое вот я и разжувал тебе все.


Приложение:


Отправлено: 13.03.2002, 07:34
Отправитель: DiGiT (регистрация: 28/12/2001, ответов на счету: 265)
ICQ:133534725
Russia(),Student

_______________

Отвечает LAO
Здравствуйте, tun!
Пусть имя исходника Prog.asm.
1) Borland Tasm (ver. 3.0 - 5.0):
шаг 1: tasm.exe prog.asm
шаг 2: tlink.exe prog.obj /t/x (если создаем prog.com)
или
шаг 2: tlink.exe prog.obj (если создаем prog.exe)
2) masm (ver. 6.1x)
ml.exe prog.asm /AT (если prog.com)
или
ml.exe prog.asm (если prog.exe)
Тексты простейшей программы (com) в приложении.
Комментарии не слишком подробны, так как надо было бы прочесть лекцию и не одну. Советую скачать архив рассылок Kalashnikoff (можно начать изучать asm, зная на компе только клаву) и читать книги.
Успехов :))


Приложение:


Отправлено: 13.03.2002, 10:12
Отправитель: LAO (регистрация: 05/03/2002, ответов на счету: 38)
Россия, Москва

_______________

Отвечает Ayl
Приветствую Вас, tun!

Не совсем понял, что имеется в виду под запускающимся файлом.
Насчет второго.
Вот две программки для вывода на экран строки "Hello, World!".
Первая компилируется в формат COM, вторая - EXE.
Как это сделать.

1. У вас должен быть установлен либо TASM, либо MASM. Рекомендую TASM.

2. В любом текстовом редакторе создаем файл 1.asm, в который записываем первую часть приложения (до строки с минусами) и файл 2.asm после строки с минусами.

3. С помощью программы tasm компилируем эти файлы:
tasm 1.asm
tasm 2.asm

В результате должны быть получены файлы 1.obj и 2.obj.

4. С помощью программы tlink линкуем:
tlink /t 1.obj
tlink 2.obj

В результате получаем файлы 1.com и 2.exe.

5. Пытаемся выполнить :)

6. Идем за пивом и отмечаем первую программу на ассемблере

7 - ... Идем по пути развития программисткого искусства :)



Приложение:


Отправлено: 13.03.2002, 12:53
Отправитель: Ayl (регистрация: 28/12/2001, ответов на счету: 170)
Россия, Санкт-Петербург

_______________

Отвечает Guess Who
Здравствуйте, tun!
Самое порстое, это вам надо скачать архив рассылки с этого сайта. Он находится по этому адресу: Архив.
Если не хотите качать весь архив, то скачайте: Выпуск № 001,Спецвыпуск № 01,Спецвыпуск № 02 - Олег Александрович там описал ответы на все ваши вопросы!!!:)


Отправлено: 13.03.2002, 16:03
Отправитель: Guess Who (регистрация: 20/02/2002, ответов на счету: 10)

_______________

Отвечает наСИльник
Доброе время суток, tun!
Скачай архив первых рассылок на сайте Калашникова. Там все подробно объяснено. С коментариями. И как запустить и сохранить.


Отправлено: 14.03.2002, 12:47
Отправитель: наСИльник (регистрация: 27/02/2002, ответов на счету: 36)
ICQ#114552395
Russia, Orsk




 Вопрос № 230

Доброе утро всем. ...---...
Тут такой трабл. Есть провайдер, логин и пароль. При проверке логина и пароля обрывается связь, или даже до проверки логина и пароля. В приложении смотрите лог модема.(там в одном месте нет значка процента не проходит он)
Я так понял проблема только в этой строке:
Hardware hangup by lowering DTR.
Что это за хрень такая и как ее убрать.
ЗЫ Командой &Dx ничего не выходит.
ЗЗЫ При дозвоне к другим провайдерам все нормально.
Люди помогите... если что пишите на мыло... принимаю любые соображения по этому поводу...

Приложение:


Отправитель: Эксперт Frank (Frank_U@mail.ru)
Вопрос отправлен: 13.03.2002, 07:37
Подгруппа: Пользовательская работа с Windows

_______________

Отвечает LAO
Доброе время суток, Frank!
DTR - data transfer rate - скорость передачи данных.
Hardware hangup by lowering DTR - железо зависает при снижении DTR (с 33600bps вниз)
Возможно, что неправильно установлены настройки соединения (TCP/IP?). Я бы еще раз их перепроверил, а если ничего не получится, то связался бы с провайдером по тел. технической поддержки. Проблемы возникают с их стороны.


Отправлено: 13.03.2002, 09:41
Отправитель: LAO (регистрация: 05/03/2002, ответов на счету: 38)
Россия, Москва

_______________

Отвечает Broken Sword
Здравствуйте, Frank!
Краткая справочка:
DTR (Data Terminal Ready) - компьютер устанавливает этот сигнал (модем это дело сразу ловит), когда он (комп) готов к приему/передаче данных. При этом на модеме должна загореться лампочка TR.

Теперь ПРАВИЛЬНЫЙ ОТВЕТ: твоя фраза "при дозвоне к другим провам все ОК" говорит сама за себя... просто твой телефон в черном списке у этого прова (пароли у них тырил?), или у них щас чтото упало, или... вариантов множество, поэтому не переживай.


Отправлено: 13.03.2002, 11:18
Отправитель: Broken Sword (регистрация: 28/12/2001, ответов на счету: 395)
ICQ#64476575
Украина, Одесса




 Вопрос № 231

Привет, всем!
Извиняюсь, но это спам. Просто у меня вопросы перестали ходить на ящик digital3@yandex.ru(ящик воркает). Поставил на другой стали приходить на него. Вот я тестирую обратно. И Олег, что то не отвечает.
нифига не понял, меня нет в экспертах !!! Регистрационная карта есть, а когда выбираешь кому отправить меня нет. млин, мож кто постарался :)))

Отправитель: Эксперт DiGiT (digit@economy.chita.ru)
Вопрос отправлен: 13.03.2002, 07:55
Подгруппа: Общие вопросы по программированию на Ассемблере под DOS

_______________

Отвечает Dron
Доброе время суток, DiGiT!

Когда выбираешь кому отправить, если выше представился как эксперт ДиГиТ, то в списке тебя не будет. ведь бесмысленно задавать вопрос самому себе. :))


Отправлено: 13.03.2002, 11:02
Отправитель: Dron (регистрация: 28/12/2001, ответов на счету: 267)
Информзащита
Адрес: Москва
URL: http://asmdev.narod.ru/asmos.html - Операционная система с нуля!
2144510
Россия, Москва




 Вопрос № 233

Привет Всем!
Помогите найти ошибку...
Сама программа выполняется, но при завершении выходит окно (This program has an illegal operation and will be shut down)
Использовал MASM32 в первый раз :-) наверное пропустил чего...
Спасибо!

Приложение:


Отправитель: Oleg (svgds@mail.ru)
Вопрос отправлен: 13.03.2002, 12:00
Подгруппа: Общие вопросы по программированию на Ассемблере под Win32

_______________

Отвечает DiGiT
Приветствую Вас, Oleg!
Так у тебя завершения программы нет, если под виндой, то ExitProcess. К тому же винда не должна позволять писать в порты. Если это не эмуляция у тебя.


Отправлено: 13.03.2002, 12:48
Отправитель: DiGiT (регистрация: 28/12/2001, ответов на счету: 265)
ICQ:133534725
Russia(),Student

_______________

Отвечает masquer
Добрый день, Oleg!
На первый взгляд - программа не завершена корректно. Написано вроде все это под ДОС. Если помню правильно, завершать нужно так
mov ax, 04C01 ;не уверен в этом значении
int 21h


Отправлено: 13.03.2002, 13:36
Отправитель: masquer (регистрация: 16/01/2002, ответов на счету: 50)
Украина, Николаев

_______________

Отвечает baldr
Здравствуйте, Oleg!

Слушай, если тебя еще не завалили гневными ответами... :)
Это же элементарно! Просто программа не завершается, а выполняет в качестве дальнейших
инструкций тот мусор, что находится после нее... Поставь в конце, или там, где нужно завершить
программу:
mov ax, 4C00h
int 21h

А в COM-программах можно просто ставить ret
Слушай, а ты вообще, если раньше писал программы, как же они у тебя завершались? Или ты асм
в первый раз видишь?


Отправлено: 13.03.2002, 23:22
Отправитель: baldr (регистрация: 28/12/2001, ответов на счету: 119)
URL: http://www.dospage.far.ru - Сайт об ОС DOS. Всем, кто любит эту ОС!
Россия, г. Семенов, Нижегородская обл.

_______________

Отвечает BMR
Доброе время суток, Oleg!

А что ExitProcess выполнять будет? Прога то завершаться должна, а не выполнять мусор из памяти.


Отправлено: 14.03.2002, 00:58
Отправитель: BMR (регистрация: 10/02/2002, ответов на счету: 108)
Россия, Пенза

_______________

Отвечает MovBlack
Добрый день, Oleg!
Поставь в конце :
Mov ah,4ch
int 21h
или поставь в конце
int 20h



Отправлено: 15.03.2002, 06:22
Отправитель: MovBlack (регистрация: 13/03/2002, ответов на счету: 7)
AsmSOft
Адрес: -
Тел.: -
-
Россия, Владивосток




 Вопрос № 234

Привет коллеги!
Тут один затык вышел. Комп не хочет отправлять почту по SMTP. Outlook Express пишет ошибка сокета ХХХХХ номер 0x800CCC0E. Что это за билебирда? Плиз помогите.

P.S. Такое впечатление, что он вообще SMTP-сервер(smtp.mailru.com) не видит. Ящик на pochtamt.ru. И где в Windows может стоять блокировка на 25 порт?

Отправитель: Эксперт Александр
Вопрос отправлен: 13.03.2002, 12:19
Подгруппа: Пользовательская работа с Windows

_______________

Отвечает baldr
Добрый день, Александр!

Точно! Не видит!
А в чем дело-то! Просто надо внимательно инструкции читать!
У меня тоже на hotbox'е почта. Так вот, в настройках smtp надо поставить smtp-сервер:

smtp.hotbox.ru

И все! Понимаешь, на нашем hotbox'е несколько сервисов - fromru.com, pisem.net, pochtamt.ru и т.д.
imap-сервер у них свой у каждого, а smtp - один на всех, причем, когда указываешь имя (логин!),
то указывать надо этот ПОЛНЫЙ почтовый адрес. Ну вроде все...


Отправлено: 13.03.2002, 23:23
Отправитель: baldr (регистрация: 28/12/2001, ответов на счету: 119)
URL: http://www.dospage.far.ru - Сайт об ОС DOS. Всем, кто любит эту ОС!
Россия, г. Семенов, Нижегородская обл.

_______________

Отвечает MovBlack
Здравствуйте, Александр!
Попробуй переустановить Винду!
Почти всегда помогает


Отправлено: 15.03.2002, 05:50
Отправитель: MovBlack (регистрация: 13/03/2002, ответов на счету: 7)
AsmSOft
Адрес: -
Тел.: -
-
Россия, Владивосток




 Вопрос № 123

1. Как открыть cd? вопрос был! знаю, писмо потерял!
Пожалуйста с примером, только на DELPHI 6.0
2.зачем в рассылке ныжно поле пароль(для экспертов)?

Отправитель: Андрей (ulv@mail.kubtelecom.ru)
Вопрос отправлен: 05.03.2002, 18:35
Подгруппа: Общие вопросы по программированию на Ассемблере под Win32

_______________

Отвечает наСИльник
Приветствую Вас, Андрей!
С помощью функции mciSendCommand (из библиотекиMMSystem) передав ей параметр MCI_SET_DOOR_CLOSED
см.Пример ниже


Приложение:


Отправлено: 05.03.2002, 21:53
Отправитель: наСИльник (регистрация: 27/02/2002, ответов на счету: 36)
ICQ#114552395
Russia, Orsk




 Вопрос № 124

Здравствуйте.
Я вот тут совершенно случайно столкнулся с одной не очень приятной вещецей.
А именно, я слегка пальнул свою клаву. Пальнул если кому интерессно статическим
электричеством. Как вы уже поняли пальнул не совсем сильно, раз уж пишу письмо.
У меня отказали всего несколько клавиш это - 12347890 на обычной клаве. А на "тополнительной"
это которая справа, работают. Так вот можно ли написать какую-нить прогу которая могла бы,
как бы это сказать, перемистила функции обычных клавиш на дополнительную клавиатуру?
И совсем будет хорошо если вы набросаете, так сказать эскиз, этой проги.
Ответы типа: купи новую клаву не принимаются, денег нету :}}}

Отправитель: z00m
Вопрос отправлен: 05.03.2002, 19:18
Подгруппа: Общие вопросы по программированию на Ассемблере под DOS

_______________

Отвечает Broken Sword
Приветствую Вас, z00m!
Нужно перехватить 9 интерапт и вклиниться в начало обработчика, пихая в порт 60h нужный скан-код. Вот и все. Напиши на brokensword@mail.ru какие именно кнопы нада туда перекинуть.

p.s. шаровая молния в форточку влетела?


Отправлено: 05.03.2002, 20:19
Отправитель: Broken Sword (регистрация: 28/12/2001, ответов на счету: 395)
ICQ#64476575
Украина, Одесса

_______________

Отвечает DiGiT
Здравствуйте, z00m!
Под дос реально можно. Просто нужно написать драйвер. А под винду то же самое, тока драйвер написать я не пытался под винду. Никогда даже и не пытался разобраться.
А под Дос вот (если уж написал в данную подгруппу). Делаешь так: устанавливаешь свой обработчик 09 -го прерывания, анализируешь нажатия(считываешь код), а потом пишешь обратно тот код ,который нужен(по-ламерски, но просто). Можешь что-нить по сложней придумать.


Отправлено: 06.03.2002, 02:02
Отправитель: DiGiT (регистрация: 28/12/2001, ответов на счету: 265)
ICQ:133534725
Russia(),Student

_______________

Отвечает jc
Доброе время суток, z00m!
Можно написать обработчик клавиатуры котрый бы улавливал нажатие клавишь и соответсвенно выполнял те действия котрые тебе нужно при нажатии определенных клавишь С уважением...


Отправлено: 07.03.2002, 09:29
Отправитель: jc (регистрация: 05/02/2002, ответов на счету: 36)
Россия, Йошкар-Ола




 Вопрос № 125

Здравствуйте, эксперты!
Возникла такая проблема:
принтер Lexmark 1020 печатает из Worda квадратики вместо русских букв, причем в других приложениях русский шрифт печатается корректно, в том числе и в Excele.
Может кто подскажет в чем тут дело?

Отправитель: Дмитрий
Вопрос отправлен: 05.03.2002, 19:59
Подгруппа: Пользовательская работа с Windows

_______________

Отвечает baldr
Добрый день, Дмитрий!

А просто ты набираешь в Ворде шрифтом, который на принтер не выводится. То есть, экранным.
А может, каким-нибудь специальным? Попробуй набирать таким же шрифтом, каким и в Excel'е!


Отправлено: 05.03.2002, 23:44
Отправитель: baldr (регистрация: 28/12/2001, ответов на счету: 119)
URL: http://www.dospage.far.ru - Сайт об ОС DOS. Всем, кто любит эту ОС!
Россия, г. Семенов, Нижегородская обл.

_______________

Отвечает Cardinal
Здравствуйте, Дмитрий!
В реестре (regedit) ищешь раздел
HKEY_CURRENT_USER/SOFTWARE/MICROSOFT/OFFICE/NUM.0/WORD
где NUM-версия ворды.
Там создаешь раздел с именем принтера (так, как в папке ПРИНТЕРЫ, например LM1020). Внутри этого раздела создаешь строковый параметр с именем "Flags" и присваиваешь ему значение "8192".

Кстати, потом возникнет проблема с плотностью печати (буквы будут "налезать" друг на друга). Для этого
HKEY_CURRENT_USER\Software\Microsoft\Office\NUM.0\Word\Options
в нем создаешь строковый параметр с именем "NoWideTextPrinting" и задаешь ему значение "1".
Не забудь перезыпустить WORD.




Приложение:


Отправлено: 06.03.2002, 07:26
Отправитель: Cardinal (регистрация: 22/01/2002, ответов на счету: 43)
ДГТУ
evg_list@aport2000.ru
Россия, Ростов-на-Дону

_______________

Отвечает змей
Добрый день, Дмитрий!
а может дело в word'e ? в могет те вордовские фонты принтер непонимает, попробуй другим шрифтом текст набивать...


Отправлено: 06.03.2002, 11:45
Отправитель: змей (регистрация: 28/12/2001, ответов на счету: 231)

_______________

Отвечает GL
Здравствуйте, Дмитрий!
Найди этот ключ в реестре:
[HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Word\Lexmark 1020 ColorFine 2] естественно, вместо Lexmark 1020 ColorFine 2
ищи имя своего принтера. Впиши (или измени) эти параметры:
"DefaultBin"=""
"Flags"="8192"


Отправлено: 06.03.2002, 13:43
Отправитель: GL (регистрация: 02/03/2002, ответов на счету: 24)
Амурская обл., Благовещенск

_______________

Отвечает root
Добрый день, Дмитрий!
В чем дело подсказать сложно, но проблема у меня такая же. Используй заведомо русские шрифты, например Times New Roman Cyr. Прозьба: скинуть инфу по этому поводу мне на мыло DruidAllanon@mail.ru


Отправлено: 08.03.2002, 01:42
Отправитель: root (регистрация: 28/12/2001, ответов на счету: 35)
РГУ
Адрес: 344064. Ростов-на-Дону, ул. Таганрогская, 50а
Тел.: (8-632) 77-97-02
URL: http://www.aofd.boom.ru - Когда-то будет homepage
ICQ: 92779849
Россия, Ростов-на-Дону




 Вопрос № 161

Мжно ли в Win2000 задать IRQ вручную?
Отправитель: Kostik (kisintin2000@mail.ru)
Вопрос отправлен: 07.03.2002, 13:01
Подгруппа: Пользовательская работа с Windows

_______________

Отвечает DivX
Доброе время суток, Kostik!
В зависимости от устройства, которое установлено. Чаще всего Windows, как вы наверное убедились, не позволяет менять значение прерывания в ручную. Единственное, что можно проделать, например для PCI-устройств, зарезервировать IRQ для них в BIOS.


Отправлено: 08.03.2002, 10:33
Отправитель: DivX (регистрация: 28/12/2001, ответов на счету: 222)

_______________

Отвечает kostik
Здравствуйте, Kostik!
В этой ОС задать можно!


Отправлено: 11.03.2002, 15:24
Отправитель: kostik (регистрация: 01/02/2002, ответов на счету: 87)
URL: http://www.ospedia.boom.ru - Что-то вроде домашней странички
mrkirov@mail.ru ICQ UIN #151014798
Россия, Хабаровск




Форма отправки сообщения
(действительна до момента выхода следующего выпуска рассылки)

Заполните приведенную ниже форму для того, чтобы отправить вопрос. Дополнительную информации по пользованию формой для подписчиков и экспертов можно получить, нажав на знак вопроса в соответствующем разделе, при этом информация будет отображена в отдельном окне.

В почтовых программах форма не работает!!! Открывайте рассылку в браузере Internet Explorer, где и набирайте Ваш вопрос.



 Персональные данные
Ваше имя:
Пароль (экспертам):
E-mail (подписчикам):
Опубликовать мой e-mail в рассылке


 Текст сообщения

Текст вопроса:

Приложение (если необходимо: программа, выдержка из закона и т.п.):



 Выбор подгруппы

Отправить всем экспертам выбранной подгруппы


SpyLOG be number one SUPERTOP

© 2000 - 2002 Россия, Москва. Авторское право: Калашников О. А.


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

В избранное