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

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


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

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

Выпуск № 775
от 21.10.2004, 12:20

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


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

maxim
Статус: Опытный
Общий рейтинг: 140.63
[Подробней >>]
Lynx
Статус: Начальный
Общий рейтинг: 138.23
[Подробней >>]
Artemy
Статус: Опытный
Общий рейтинг: 108.39
Телефон: 8 905 549 38 66
[Подробней >>]
 
PavPS
Статус: Доверительный
Общий рейтинг: 111.03
[Подробней >>]
Tigran K. Kalaidjian
Статус: Профессиональный
Общий рейтинг: 180
URL: Персональная страничка
[Подробней >>]
Евгений Иванов
Статус: Профессиональный
Общий рейтинг: 132.41
URL: Super Assembler Software
Телефон: НСС +7 831 3107039
[Подробней >>]
 
_vt
Статус: Профессиональный
Общий рейтинг: 118.3
[Подробней >>]
Василевский Александр
Статус: Опытный
Общий рейтинг: 116.81
[Подробней >>]
St
Статус: Профессиональный
Общий рейтинг: 104.65
[Подробней >>]
 
Ayl
Статус: Профессиональный
Общий рейтинг: 116.18
[Подробней >>]
DusheS
Статус: Начальный
Общий рейтинг: 111.42
[Подробней >>]
Стас
Статус: Опытный
Общий рейтинг: 121.73
[Подробней >>]
 
Evils_Interrupt
Статус: Начальный
Общий рейтинг: 120.37
[Подробней >>]
DSota
Статус: Начальный
Общий рейтинг: 120.75
[Подробней >>]
Горячев Игорь
Статус: Опытный
Общий рейтинг: 111.64
[Подробней >>]


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

Вопрос № 5892. Кто проконсультирует по вопросу ODBC API - с его помошью можно создать файл базы данных? И где (кром... (ответов: 2)
Вопрос № 5893. Как выполнить поэлементное сложение двух массивов двоично-десятичных чисел? Десятичную коррекцию мож... (ответов: 3)
Вопрос № 5894. Добрый день! Подскажите пожалуста какие то доки по програмированию клавиатуры через I/O порты. Также... (ответов: 6)
Вопрос № 5895. Есть файл 1.bmp и есть masm32 и RadAsm. 1) как можно создать ресурс только с помощью masm32 и подклю... (ответов: 3)
Вопрос № 5896. Раньше печатался заначек с кодом 1 (Смайлик) спустя какоето время тот же код программы уже не работа... (ответов: 1)
Вопрос № 5897. ja na4al izu4atj jazik assambler po knige kolashnokova, tam nuwno vipolnjatj premeri prevedennije v ... (ответов: 2)
Вопрос № 5898. nachal izu4atj po knige Kalawshnikova assambler, tam nuzhno vipolnjatj premeri, no ja neumeju poljzo... (ответов: 1)
Вопрос № 5901. Это, элементарная программка по выводу текста на экран. Я в asm'е, можно сказать, новичок и передо м... (ответов: 6)
Вопрос № 5902. Дарова эксперт! Я относительно недавно занимаюсь асмой и у меня накопилось масса вопросов. Мне посов... (ответов: 3)

Вопросов: 9, ответов: 27


 Вопрос № 5892

Кто проконсультирует по вопросу ODBC API - с его помошью можно создать файл базы данных? И где (кроме msdn) можно почитать про odbc api и поглядеть примеры использования (Wasm.ru уже читал)



Вопрос отправлен: 14.10.2004, 00:02
Отправитель: argus

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

Отвечает maxim

Здравствуйте, argus!
на сайте у Пирогова или Юрова


Ответ отправлен: 14.10.2004, 19:52
Отправитель: maxim


Отвечает Lynx

Доброе время суток, argus!
>с его помошью можно создать файл базы данных?
Файл базы данных можно создать и на Hexeditor'е. :)))

Ответ отправлен: 14.10.2004, 16:03
Отправитель: Lynx


 Вопрос № 5893

Как выполнить поэлементное сложение двух массивов двоично-десятичных чисел? Десятичную коррекцию можно не применять?



Вопрос отправлен: 14.10.2004, 00:25
Отправитель: Евгений

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

Отвечает maxim

Здравствуйте, Евгений !
применять-читай много умных
книжек, например
Пирогова или Юрова, кстати на их
сайтах полно семплов


Ответ отправлен: 14.10.2004, 19:43
Отправитель: maxim


Отвечает Artemy

Здравствуйте, Евгений !
Сумма двух массивов одинаковой длины есть массив попарных сумм элементов первого и второго массивов.
code segment
org 100h
assume cs:code,ds:code
start: jmp begin
mass1 dw 00, 10,20,30,40,50,60,70,80,90
mass2 dw 00, 11,21,31,41,51,61,71,81,91
rezultat dw 10 dup(?)
begin:
push cs
pop ds
push cs
pop es
mov cx,10
mov bx,offset rezultat
mov si,offset mass1
mov di,offset mass2
l1:
mov ax,[si]
add ax,[di]
mov [bx],ax
inc bx
inc si
inc di
loop l1
mov ax,4c00h
int 21h
code ends
end start

Ответ отправлен: 14.10.2004, 09:00
Отправитель: Artemy


Отвечает Lynx

Доброе время суток, Евгений !
А в чём проблемма хотелось бы узнать? Поэлементное сложение массивов двоично-десятичных чисел ничем не отличается от сложения двоично-десятичных чисел. Десятичную коррекцию можешь не использовать (точнее её команду) а корректировать "вручную".

Ответ отправлен: 14.10.2004, 16:03
Отправитель: Lynx


 Вопрос № 5894

Добрый день!
Подскажите пожалуста какие то доки по програмированию клавиатуры через I/O порты. Также меня интересует что посылает клавиатура, когда нажата какая-то конкретная кнопка и еще стандарт занесения символов в буфер (в Линухе некоторые клавиши заносит в каком-то таком формате: [[[b
Кто обяснит что это и где об этом можно почитать



Вопрос отправлен: 14.10.2004, 01:14
Отправитель: Madman

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

Отвечает PavPS

Доброе время суток, Madman!
Что касается клавиатуры, то вот в файле из NTDDK ntddkbd.h можно глянуть на структуры, которые посылаются девайсу клавы на Buffered IO.

Ответ отправлен: 14.10.2004, 12:25
Отправитель: PavPS


Отвечает Lynx

Здравствуйте, Madman!
В следующий раз конкретизируй какую ОС ты имеешь ввиду. Если это Windows, то Стивен Роман "Программирование в Win32 API на Visual Basic" - там теория классно изложена, а примеры на VB. Если MS-DOS, то Питер Нортон "Программно-аппаратная организация IBM PC".

Ответ отправлен: 14.10.2004, 16:03
Отправитель: Lynx


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

Добрый день, Madman!
Используются порты 60h и 61h. Очень подробно написано у Фролова:
http://www.lib.csu.ru/DL/bases/prg/frolov/books/bsp/v02/ch2.htm

Ответ отправлен: 14.10.2004, 16:32
Отправитель: Tigran K. Kalaidjian


Отвечает maxim

Доброе время суток, Madman!
на CitForum'е--
www.citforum.ru


Ответ отправлен: 14.10.2004, 19:18
Отправитель: maxim


Отвечает Евгений Иванов

Добрый день, Madman!
когда нажата кнопка, то посылается её код с автоповтором..
* EMan: -=- И легко перо, да на крышу не закинешь. =-=


Ответ отправлен: 14.10.2004, 20:27
Отправитель: Евгений Иванов


Отвечает _vt

Приветствую Вас, Madman!
То, что в "Линухе" - это ESC-последовательности, и никакого отношения к программированию клавиатуры они не имеют. Почитай Журдена.
* Origin : In Gates we trust !!! :)


Ответ отправлен: 14.10.2004, 21:14
Отправитель: _vt


 Вопрос № 5895

Есть файл 1.bmp
и есть masm32 и RadAsm.
1)
как можно создать ресурс только с помощью masm32 и подключить его в файл?
2)
как можно создать ресурс средствами RadAsm?
С уважением Evil`s Interrupt



Вопрос отправлен: 14.10.2004, 09:24
Отправитель: EvilsInterrupt (int20h@yandex.ru)

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

Отвечает Василевский Александр

Здравствуйте, EvilsInterrupt!
Для создания ресурсов необходим компилятор ресурсов (RC). Единственный способ только при помощи MASM записать BMP-файл в программу состоит в следующем. Пишется программа, которая переводит BMP-файл в ASM-файл с последовательностью типа:
MyBMP DB ...
Где вместо ... подставляется байты из BMP-файла. Затем в главную программу подключается этот ASM-файл. По-другому (без RC) сделать не получится - только если загружать файл динамически.
На счёт RadASM ничего не скажу - не пользовался.

Ответ отправлен: 14.10.2004, 09:38
Отправитель: Василевский Александр


Отвечает St

Привет, EvilsInterrupt!
Можно создать и в Блокноте. Напимер можно добавить в RC-файл иконку таким образом:
102 ICON MOVEABLE PURE LOADONCALL DISCARDABLE "MAINICON.ICO"
(MAINICON.ICO должно быть в том же каталоге, MOVEABLE PURE LOADONCALL DISCARDABLE - необязательны, нужны для управления памятью). Можно также использовать и BITMAP вместо ICON для подключения картинок.
Дальше RC-файл компилируется в процессе создания EXE-шника и подключается к нему.
St

Ответ отправлен: 14.10.2004, 17:24
Отправитель: St


Отвечает _vt

Доброе время суток, EvilsInterrupt!
В составе MASM32 имеет утилита RC.EXE, которая представляет собой компилятор ресурсов - из rc в res. Формат rc-файла стандартен и описан в MSDN.
===1.rc===
#define ID_BITMAP 101
ID_BITMAP BITMAP "bitmap.bmp"
=========
Уже этого достаточно для того, чтобы скомпилировать res-файл. Компилируется просто: rc 1.rc
Этот res-файл при сборке программы линкуется вместе с программой.
В RadAsm, насколько я помню, есть визуальный редактор ресурсов, достаточно выбрать нужный пункт меню.
* Origin : In Gates we trust !!! :)


Ответ отправлен: 14.10.2004, 21:14
Отправитель: _vt


 Вопрос № 5896

Раньше печатался заначек с кодом 1 (Смайлик) спустя какоето время тот же код программы уже не работает , точнее просто не выводит на экран символ (при компиляции ошибок не выдает)
пробовал эксперементировать со значениями "mov ah,31" и "mov di,0", тодже результат...
В чем может заключаться эта проблема ?


Приложение:


Вопрос отправлен: 14.10.2004, 12:18
Отправитель: Dima

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

Отвечает Ayl

Доброе время суток, Dima!
Установи в начале программы режим и все должно заработать:
mov ax, 3
int 10h


Ответ отправлен: 14.10.2004, 14:08
Отправитель: Ayl


 Вопрос № 5897

ja na4al izu4atj jazik assambler po knige kolashnokova, tam nuwno vipolnjatj premeri prevedennije v knige, ja neumeju poljzovatsa samoj programmoj assambler, ja jego ska4al s kolashnikof.ru i ustanovil na svojom kompjutere, no neumeju im poljzovatsa, gde mowno vzjatj rukovodstvo kak poljzovatsa programmmoj?



Вопрос отправлен: 14.10.2004, 14:43
Отправитель: KooP (KooP@one.lv)

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

Отвечает DusheS

Доброе время суток, KooP!
Начну с того, что тебе для начала нужно изучать что-то в роде Паскаля или Бейсика.
Задай себе вопрос: "Для чего мне асм?"
Создай файл "compile.bat", запиши в него текст из приложения.
"имя_фала.asm" - это файл в котором ты пишешь свою программу.
Открывать его можешь любым текстовым редактором рекомендую "FAR" c плагином http://hi-tech.nsys.by/download/misc/colorer.zip.


Приложение:

Ответ отправлен: 14.10.2004, 16:08
Отправитель: DusheS


Отвечает Lynx

Здравствуйте, KooP!
А что там знать? Создаёшь файл с прогой (prog.asm)
tasm.exe prog.asm <- появиться prog.obj
tlink.exe /x /t prog.obj <- это если *.com
tlink.exe prog.obj <- это если *.exe
А вообще если консольная программа запущена без параметров (или с параметром /?), то она должна выводить список ключей. Почитай.



Ответ отправлен: 15.10.2004, 14:08
Отправитель: Lynx


 Вопрос № 5898

nachal izu4atj po knige Kalawshnikova assambler, tam nuzhno vipolnjatj premeri, no ja neumeju poljzovatsa programmoj assambler, ja jejo skachal i ustanovil (MASM 6.11), no vot kak jeju poljzovatsa: naprimer gde pisatj tekst programmi? kak sohranjatj programmu? kak otkrivatj fail? kak kompilirovatj, i nakonec, 4to takoje komandnaja stroka?



Вопрос отправлен: 14.10.2004, 15:05
Отправитель: tekvadront

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

Отвечает Lynx

Добрый день, tekvadront!
Насколько я понимаю в Masm нет оболочки, в которой можно делать всё вышеперечисленное. Текст программы надо писать в любом текстовом редакторе (Notepad например) сожранать его с расширение *.asm и указывать masm'у в качестве параметра имя этого файла. Коммандная строка содержиться во всех файловых менеджерах приемущественно внизу окна. Вобщем если вначале строки строки стоит "<диск>:" то в 99% случаев это оказывается командной строкой (или можешь в винде "Пуск->Выполнить" набрать command.com и перед тобой ничего кроме командной строки не появиться) :)))

Ответ отправлен: 15.10.2004, 14:07
Отправитель: Lynx


 Вопрос № 5901

Это, элементарная программка по выводу текста на экран.
Я в asm'е, можно сказать, новичок и передо мной встала такая задача:
Модифицировать код так, чтобы он выводил строку 'Hello World!!!' по
одному символу вертикально или по диагонали.
В общем-то наработки кое-какие есть, но кодить пока не получается,
мало практики...
Заранее благодарен!!!
Извеняюсь за прошлый вопрос, который попал не в ту рассылку, которую положено.


Приложение:


Вопрос отправлен: 17.10.2004, 09:56
Отправитель: Дмитрий

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

Отвечает Стас

Приветствую Вас, Дмитрий!
Для вывода посимвольно, нужно использовать либо фукции (DOS 21h) 02h (или напр. 06h), а для перевода на другую строку печатать 0dh. Если не по диагонали то еще и 0ah. Или пробелами ставить там где надо.
Или пользоваться BIOS (Int 10h):
ah=02h - Установить курсор в позицию dh,dl; bl - страница
Писать символ в тек. позиции курсора - функции 9 и 0ah,0eh.


Ответ отправлен: 17.10.2004, 22:28
Отправитель: Стас


Отвечает Евгений Иванов

Здравствуйте, Дмитрий!
делай цикл и выводи
* EMan: -=- И легко перо, да на крышу не закинешь. =-=


Ответ отправлен: 18.10.2004, 13:07
Отправитель: Евгений Иванов


Отвечает Evils_Interrupt

Приветствую Вас, Дмитрий!
Если вертикально то почему бы после каждого символа не использовать 13,10?

Ответ отправлен: 17.10.2004, 15:17
Отправитель: Evils_Interrupt


Отвечает DSota

Здравствуйте, Дмитрий!
Один из вариантов - можно просто между буквами выводить перевод строки...


Приложение:

Ответ отправлен: 18.10.2004, 09:39
Отправитель: DSota


Отвечает Artemy

Здравствуйте, Дмитрий!
См. приложение...
Печатает и ветикально и по диагонали.


Приложение:

Ответ отправлен: 18.10.2004, 09:44
Отправитель: Artemy


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

Доброе время суток, Дмитрий!
Программа в приложении.
Для посимвольного вывода хорошо использовать 29h-е прерывание. Вот описание:
INT 29 C - DOS 2+ - FAST CONSOLE OUTPUT
AL = character to display
Return: nothing
BX may be destroyed by some versions of DOS 3.3
Notes: automatically called when writing to a device with bit 4 of its device
driver header set (see also INT 21/AH=52h)
COMMAND.COM v3.2 and v3.3 compare the INT 29 vector against the INT 20
vector and assume that ANSI.SYS is installed if the segment is larger
the default handler under DOS 2.x and 3.x simply calls INT 10/AH=0Eh
the default handler under DESQview 2.2 understands the [2J
screen-clearing sequence, calls INT 10/AH=0Eh for all others
SeeAlso: INT 21/AH=52h,INT 2F/AX=0802h,INT 79"AVATAR.SYS"


Приложение:

Ответ отправлен: 19.10.2004, 21:12
Отправитель: Tigran K. Kalaidjian


 Вопрос № 5902

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


Приложение:


Вопрос отправлен: 17.10.2004, 12:15
Отправитель: Strelok (Strelok.sad@xaker.ru)

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

Отвечает Горячев Игорь

Здравствуйте, Strelok!
MSDN!!! :) Лучше не найдешь нигде - даже не ищи!

Ответ отправлен: 17.10.2004, 16:07
Отправитель: Горячев Игорь


Отвечает Evils_Interrupt

Здравствуйте, Strelok!


Ответ отправлен: 17.10.2004, 15:18
Отправитель: Evils_Interrupt


Отвечает Василевский Александр

Доброе время суток, Strelok!
Вся информация о WinAPI есть в MSDN (Visual C++) и Platform SDK. Естественно там она описана на английском языке и примеры на языке C/C++. Если Вам нужна информация на русском, то могу посоветовать сайт http://www.bcbdev.ru/winapi.htm. Там можно скачать справочник, но он опять-таки написан для использования программистами C/C++. Assembler'ных справочников я не знаю.

Ответ отправлен: 18.10.2004, 09:02
Отправитель: Василевский Александр



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

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


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


Получить ответов:


 Выбор рассылки

Программисту
Assembler (25)
C / C++ (17)
Perl (7)
Builder / Delphi (16)
Pascal (19)
Basic / VBA (8)
Java / JavaScript (5)
PHP (17)
Криптография (7)
WinAPI (14)
Радиоэлектроника (14)
Пользователю
Windows 95/98/Me (44)
Windows NT/2000/XP (62)
"Железо" (39)
Поиск информации (21)
Администратору
Windows NT/2000/XP (36)
Linux / Unix (16)
Юристу
Гражданское право (6)
Семейное право (3)
Трудовое право (5)
КоАП (4)

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





http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.faq
Отписаться

В избранное