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

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


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

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

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler

Выпуск № 320
от 21.12.2005, 09:09

Администратор:Калашников О.А.
В рассылке:Подписчиков: 250, Экспертов: 21
В номере:Вопросов: 6, Ответов: 7


Вопрос № 31554: Уважаемые эксперты! Помогите пожалуйста! Мне срочно нужна программа на ассемблере,которая бы делила шестнадцатиричные числа,а результат выдавала в двоичной форме,т.е. (hex/hex)-->bin....
Вопрос № 31560: Здравствуйте уважаемые эксперты, у меня такой вопрос, как сделать чтобы программа (написанная на асме), после того как выполнится (произведет необходимые действия), самоудалилась, т.е. стерла саму себя (интересно такое возможно?), или, до...
Вопрос № 31569: Уважаемые эксперты!Я недавно начал учить ассемблер,и столкнулся с одной проблемой - везде написано,КАК писать,но нигде - ГДЕ писать. В каталоге ассемблера,выложенного товарищем Калашниковым приложений много,какое из них - это экран ввода?Подскажи...
Вопрос № 31570: Здраствуйте, дорогие эксперты. Листая книги по ассемблеру, у меня возник один вопрос: Как в COM программе можно сделать приглашение на ввод каких-либо данных (циферек разных) с последующим заненсением введённого значения в какой-нибудь...
Вопрос № 31581: Не могу реализовать алгоритм Евклида. Т.е тело есть, но немогу сделать ввод двух чисел и вывод содержимого регистра на экран. Помогите, плз...
Вопрос № 31582: Добрый вечер, уважаемые эксперты. Помогите с задачей. Нужно написать программу, которая будет обрабатывать нажатия клавиш пользователем и строить гистограмму нажатых цифр (1,2,...,9,0). У меня есть программа- то же самое, но с буквами анг...

Вопрос № 31.554
Уважаемые эксперты!
Помогите пожалуйста!
Мне срочно нужна программа на ассемблере,которая бы делила шестнадцатиричные числа,а результат выдавала в двоичной форме,т.е. (hex/hex)-->bin.
Отправлен: 15.12.2005, 15:19
Вопрос задал: 1086 (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Sager
Здравствуйте, 1086!
Перевод hex2bin производится разбиением двоичного числа на тетрады (т.е. на группы по 4 цифры, т.к. 2^4 = 16) и переводом каждой тетрады в hex-цифру.
Например:
011010101010b = 0110 1010 1010 = 6AAh
В приложении пример.
Если что непонятно - пиши.

Приложение:

Ответ отправил: Sager (статус: Студент)
Отправлен: 15.12.2005, 18:17


Вопрос № 31.560
Здравствуйте уважаемые эксперты,
у меня такой вопрос, как сделать чтобы программа (написанная на асме), после того как
выполнится (произведет необходимые действия), самоудалилась, т.е. стерла саму себя
(интересно такое возможно?), или, допустим я хочу чтобы она удалилась... например ровно
в 12.00 16 декабря 2006г. возможно-ли (а самое главное как) это реализовать???
Если можно дайте закоментированный отрезок кода, который бы все это проверял и удалял программу
(самоуничтожался).
Заранее примного благодарен....
Отправлен: 15.12.2005, 17:21
Вопрос задал: Goff (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Gibbel
Здравствуйте, Железняков Виктор Михайлович!

К сожалению, вы не уточнили, какая ОС у вас используется.
Если Windows, то исполняемый файл не может удалить сам себя. Для этого программно создается .bat (или .cmd) файл, который содержит инструкции по удалению программы и самого себя и запускается при завершении работы программы.
Ну а если вы хотите произвести удаление в какую-то конкретную дату, то надо будет этот .bat (или .cmd) файл запланировать в стандартном планировщике задач.

P.S.: к сожалению, пример привести не могу, но его не сложно будет вам самому написать учитывая данную мной информацию.
---------
От жизни еще никто не умирал
Ответ отправил: Gibbel (статус: *Ветеран)
Отправлен: 15.12.2005, 18:05
Оценка за ответ: 4


Вопрос № 31.569
Уважаемые эксперты!Я недавно начал учить ассемблер,и столкнулся с одной проблемой - везде написано,КАК писать,но нигде - ГДЕ писать.
В каталоге ассемблера,выложенного товарищем Калашниковым приложений много,какое из них - это экран ввода?Подскажите,плз!
P.S.
Окончил курсы паскаля,си++,делфи,басика,но с такой проблемой я не сталкивался ни разу:(
Заранее благодарен!
Отправлен: 15.12.2005, 20:22
Вопрос задал: Подосочный Максим Павлович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 7)

Отвечает: Sager
Здравствуйте, Подосочный Максим Павлович!
Писать можно в любом текстовом редакторе, только сохранять файл нужно с расширением *.asm. Например, берешь блокнот, пишешь прогу, сохраняешь (напр. prog.asm), запускаешь командную строку(Пуск-Выполнить-cmd.exe) и там пишешь:
C:masm611inml.exe C:prog.asm /AT (пути до ml.exe и prog.asm у тебя могут отличаться). А еще лучше использовать специальную IDE для ассемблера - RadAsm. Там все просто: в Options-> Set Paths укажешь путь до компилятора, а потом File-> New Project-> Dos App(com)-> и потом жмешь далее и всё. Чтобы скомилить прогу жмешь Alt-Shift-F5, чтобы запустить - Ctrl-Shift-F5(или Ctrl-F5):
http://radasm.visualassembler.com/
Ответ отправил: Sager (статус: Студент)
Отправлен: 16.12.2005, 09:56
Оценка за ответ: 5
Комментарий оценки:
Огромное спасибо!!!


Вопрос № 31.570
Здраствуйте, дорогие эксперты.

Листая книги по ассемблеру, у меня возник один вопрос:
Как в COM программе можно сделать приглашение на ввод каких-либо данных (циферек разных) с последующим заненсением введённого значения в какой-нибудь регистр.
Этого я, почему-то нигде не встречал...
Отправлен: 15.12.2005, 20:49
Вопрос задал: Compare (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Goff
Здравствуйте, Compare!
Это делается очень просто
сперва вызываешь адрес какой-нибудь строки прерыванием DOS (21h)
Потом вызываешь прерывание BIOS (16h - ожидание ввода клавиши)

Приложение:

---------
Жизнь прожить - не два байта переслать!!!

Ответ отправил: Goff (статус: 1-ый класс)
Отправлен: 15.12.2005, 21:19
Оценка за ответ: 5
Комментарий оценки:
Супер!!! Спасибо!!!

Отвечает: Sager
Здравствуйте, Compare!
В приложении прога, кот. ждет нажатия клавиш, пока не нажал enter, при этом код клавиши в регистре al, а чтобы получить реальное число в регистре, нужно вычесть из al 30h(sub al,30h)

Приложение:

Ответ отправил: Sager (статус: Студент)
Отправлен: 16.12.2005, 09:56
Оценка за ответ: 5
Комментарий оценки:
Круто...


Вопрос № 31.581
Не могу реализовать алгоритм Евклида. Т.е тело есть, но немогу сделать ввод двух чисел и вывод содержимого регистра на экран.

Помогите, плз
Отправлен: 16.12.2005, 00:06
Вопрос задал: Compare (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Sager
Здравствуйте, Compare!
В приложении программа, которая считывает числа и выводит их на экран. Только заметь - если тебе нужно эти числа обрабатывать, то каждый раз вычитай из al 30h, т.к. там лежит код нажатой клавиши,а тебе нужна сама цифра

Приложение:

Ответ отправил: Sager (статус: Студент)
Отправлен: 16.12.2005, 19:50


Вопрос № 31.582
Добрый вечер, уважаемые эксперты.
Помогите с задачей.
Нужно написать программу, которая будет обрабатывать нажатия клавиш пользователем и строить гистограмму нажатых цифр (1,2,...,9,0).
У меня есть программа- то же самое, но с буквами англ. алфавита.
Хелп. очень срочно надо.

Приложение:

Отправлен: 16.12.2005, 00:43
Вопрос задала: Kat (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Sager
Здравствуйте, Kat!
В приложении программа, которая выводит все нажатые клавиши и записывает их в файл, при нажатие на Esc - выходит

Приложение:

Ответ отправил: Sager (статус: Студент)
Отправлен: 16.12.2005, 18:49


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

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

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

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

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


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


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

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.faq
Архив рассылки
Отписаться
Вспомнить пароль

В избранное