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

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


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

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

Выпуск № 646
от 03.10.2003, 20:30

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


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

Bob Johnson
Статус: Профессиональный
Общий рейтинг: 151.26
URL: Программирование
[Подробней >>]
_vt
Статус: Профессиональный
Общий рейтинг: 122.35
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.08
[Подробней >>]
 
Dark_Lord
Статус: Профессиональный
Общий рейтинг: 110.92
[Подробней >>]
madman!
Статус: Начальный
Общий рейтинг: 110.25
[Подробней >>]
Виктор
Статус: Начальный
Общий рейтинг: 100.89
[Подробней >>]
 
ASMодей
Статус: Профессиональный
Общий рейтинг: 112.84
[Подробней >>]
Ayl
Статус: Профессиональный
Общий рейтинг: 117.5
[Подробней >>]
Gibbel
Статус: Профессиональный
Общий рейтинг: 106.9
URL: Savage Metal Club - жизнь в стиле рок-н-ролл
Телефон: +7 901 710 3146
[Подробней >>]
 
ShumV
Статус: Начальный
Общий рейтинг: 101.36
[Подробней >>]
Maverick
Статус: Профессиональный
Общий рейтинг: 123.99
URL: Эхоконференция по вирмейкингу
Телефон: 89039415024 (BeeLine GSM)
[Подробней >>]
Евгений Иванов
Статус: Профессиональный
Общий рейтинг: 139
URL: Super Assembler Software
Телефон: НСС +7 831 3107039
[Подробней >>]
 
dimka
Статус: Опытный
Общий рейтинг: 118.68
Телефон: (231)-4-43-85
[Подробней >>]


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

Вопрос № 4224. Приветствую! Я по поводу таба в обычных(не диалоговых окнах). Спасибо за ответ, всё работает. Но ест... (ответов: 1)
Вопрос № 4226. Доброго времени суток, _vt! Приведеные Вами примеры мне знакомы, однако вопрос в другом, мне нужно с... (ответов: 1)
Вопрос № 4227. Привет. Задавал вопрос сипипишникам, но они молчат. Вы, ясен пень не асмом единым живы, поэтому риск... (ответов: 1)
Вопрос № 4228. Здравствуйте все. Кто-нибудь, киньте плиз в меня куском кода, представляющем из себя реализацию функ... (ответов: 2)
Вопрос № 4229. сорри за флейм... Блин, эксперты почти все уже ушли из рассылки, а тут еще и выпуски стали редко вых... (ответов: 3)
Вопрос № 4230. Вот вопрос: на винте есть конфеденциальная инфа, которую определенные люди ни в коем случае не должн... (ответов: 3)
Вопрос № 4231. Здравствуйте, уважаемые эксперты. Слышала о мультиплатформенных исполняемых модулях, но вот убей пон... (ответов: 1)
Вопрос № 4232. Здравствуйте, програмers. Помню, когда изучал ассемблер для спектрума, отец достал где-то книжку по... (ответов: 3)
Вопрос № 4233. Подскажите пожалуйста Е-Mail экспертов Igoryk и Ayl ... (ответов: 1)
Вопрос № 4235. Подскажите как получить RND на ассемблере ... (ответов: 3)
Вопрос № 4236. Здравствуйте! Когда запускаю программу под отладчиком, не совсем ясно,где она начинается и заканчива... (ответов: 1)
Вопрос № 4238. Здраствуйте! Не могли бы вы мне объяснить что за окошки у AFDPRO справа и снизу, а также что такое H... (ответов: 2)
Вопрос № 4239. Здраствуйте! Я везде по всему Internet'у ищу Helpassm но нигде его нет (у Олега Калашникова тоже).Мо... (ответов: 3)

Вопросов: 13, ответов: 25


 Вопрос № 4224

Приветствую! Я по поводу таба в обычных(не диалоговых окнах). Спасибо за ответ, всё работает. Но есть ещё одна проблема - по-прежнему не работает свойство кнопки BS_DEFPUSHBUTTON, т.е. кнопка по умолчанию. Вроде бы выделяется чёрной рамкой, но при нажатии Enter действия не происходит. Что тут можно сделать?



Вопрос отправлен: 26.09.2003, 17:08
Отправитель: Кодер

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

Отвечает Bob Johnson

Доброе время суток, Кодер!
Присвой ей идентификатор IDOK. Вроде все... Правда возможно, что при поступлении BN_CLICKED придется самому закрывать диалог (EndDialog). Точно сейчас не помню...

* EMan1.5: ---===*** The game we play ***===---


Ответ отправлен: 26.09.2003, 20:44
Отправитель: Bob Johnson


 Вопрос № 4226

Доброго времени суток, _vt!
Приведеные Вами примеры мне знакомы, однако вопрос в другом, мне нужно сделать следующее, после вызова ChooseFont установить выбранный шрифт RichEdit, но значение, возвращаемое в LOGFONT.height всегда равно -10, а так как для задачи шрифта RichEdit используется своя структура, мне нужно всётаки записать в неё значение высоты символа.



Вопрос отправлен: 27.09.2003, 11:35
Отправитель: Dark_Lord

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

Отвечает _vt

Приветствую Вас, Dark_Lord!
Оставь для связи мыло - что-нибудь придумаем...

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 30.09.2003, 06:56
Отправитель: _vt


 Вопрос № 4227

Привет. Задавал вопрос сипипишникам, но они молчат. Вы, ясен пень не асмом единым живы, поэтому рискну спросить вас.
Работаю с VC6.0. Создал SDI. "Представление" на базе CFormView. Короче пихаю на диалог (который служит "представлением" документа) Tab Control (тот который CTabCtrl). Вот-с. А чё дальше делать не пойму. Как на вкладки запихивать компоненты? Чё-то он (Tab Control) совсем не поддаётся никаким манипуляциям. Неужели всё динамически создавать надо? Чё-то больно геморно тогда будет.
И чё в VC всегда так непросто интерфейсы клепать?
Спасибо за усё.



Вопрос отправлен: 27.09.2003, 15:59
Отправитель: ПАПА

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

Отвечает vitya

Добрый день, ПАПА!
элементы добавляются прямо на форму и в зависитмости от страницы тебе придется делать их видимыми/невидимыми.
Если тебе не хочтся все это делать - то твой путь работать с CPropertySheet и CPropertyPage...

Ответ отправлен: 28.09.2003, 12:12
Отправитель: vitya


 Вопрос № 4228

Здравствуйте все.
Кто-нибудь, киньте плиз в меня куском кода, представляющем из себя реализацию функции CompareString, но на ассемблере. У меня ужасно громоздкая процедура получилась.
А из вас многие наверное уже это давно сделали.
Спасибо.



Вопрос отправлен: 27.09.2003, 20:05
Отправитель: Макс (maxe@mail.kz)

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

Отвечает Dark_Lord

Приветствую Вас, Макс!
Если не нужно учитывать заглавность букв, то
StringCheckNoCase proc
push ebp
mov ebp,esp
push dword ptr [ebp+0ch]
call CheckStringLength
inc eax
and eax,0FFFFFFFCh
add eax,000000008h
shl eax,1
sub esp,eax
mov ebp,esp
shr eax,1
push ebx
push edi
push esi
push ecx
mov ebx,eax
lea eax,[ebp+ebx*2+0ch]
mov eax,dword ptr [eax]
push eax
push ebp
call CopyString
mov byte ptr [ebp+eax+1],0
lea eax,[ebp+ebx*2+08h]
mov esi,dword ptr [eax]
lea edi,[ebp+ebx]
lea ecx,[ebx-1]
rep movsb
null eax
stosb
push ebp
call CharLower
lea eax,[ebp+ebx]
push eax
call CharLower
mov edi,ebp
lea esi,[ebp+ebx]
push edi
call CheckStringLength
lea ecx,[eax-1]
null eax
repe cmpsb
jz same
dec eax
same:
inc eax
lea ebp,[ebp+ebx*2]
pop ecx
pop esi
pop edi
pop ebx
leave
ret 8
StringCheckNoCase endp
если просто сравнить, то
CheckString proc
push ebp
mov ebp,esp
push edi
push esi
push ecx
push ebx
push edx
mov esi,[ebp+08h]
mov edi,[ebp+0Ch]
push esi
push edi
call _CheckStringLength@4
mov ecx,eax
call _CheckStringLength@4
cmp eax,ecx
jb error_string
inc eax
mov ebx,eax
mov edx,ecx
loop1:
dec ebx
lodsb
cmp ebx,ecx
jb error_string
cmp al,[edi]
je next_
cmp ecx,edx
je loop1
mov ecx,edx
mov edi,[ebp+0Ch]
jmp short loop1
next_:
dec ecx
jz found_
inc edi
jmp short loop1
found_:
xor eax,eax
inc eax
end_string:
pop edx
pop ebx
pop ecx
pop esi
pop edi
leave
ret 8
error_string:
xor eax,eax
jmp short end_string
CheckString endp

Ответ отправлен: 27.09.2003, 21:55
Отправитель: Dark_Lord


Отвечает madman!

Heavy metal, Макс!
Смотрите процедуру в приложении. Реализовано на NASMe, но есть коментарии как это будет на TASMe.
Будут вопросы - /yo-ho@km.ru/
Удачного сравнения!

* EMan1.5: RAMMSTEIN & System of a Down is cool!


Приложение:

Ответ отправлен: 27.09.2003, 22:42
Отправитель: madman!


 Вопрос № 4229

сорри за флейм...
Блин, эксперты почти все уже ушли из рассылки, а тут еще и выпуски стали редко выходить.
Читать стало нечего: эх, придетеся опять на анекдоты подписываться :)
Может, это хоть Вас повеселит: перевод слова системой Lingvo 8.0
" biker [ ]
1) мотоциклист
2) байкер ( член организованной банды мотоциклистов, занимающихся обычно рэкетом, охраной преступных авторитетов и подобной деятельностью; обычные атрибуты - сатанисткая и металлистская символика; часто - персонажи фантастических романов о жизни после третьей мировой войны ) "
:)



Вопрос отправлен: 28.09.2003, 02:34
Отправитель: вова

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

Отвечает Виктор

Приветствую Вас, вова!
Никогда не засоряй экспертам почту_!
У_них_без тебя_дел_погорлу!


Ответ отправлен: 28.09.2003, 23:43
Отправитель: Виктор


Отвечает _vt

Добрый день, вова!
А ты подпишись на WinNT для пользователя - вот повеселишься...

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 29.09.2003, 01:48
Отправитель: _vt


Отвечает madman!

Доброго дня, Вова!
Это конечно по теме (:-0)
Анекдот (уверен такого в инете нет):
Шел мужик, развернулся и назад пошол!!
...
А теперь еще один:
Шел мужик, не развернулся и назад пошол...

* EMan1.5: RAMMSTEIN & System of a Down is cool!


Ответ отправлен: 30.09.2003, 22:57
Отправитель: madman!


 Вопрос № 4230

Вот вопрос: на винте есть конфеденциальная инфа, которую определенные люди ни в коем случае не должны получить, но есть вариант что они могут попытаться получить ее сило. Вопрос: как мне быстро все с винта снести? Т.е. как я понимаю - мне надо снести fat-таблицу (они восстановить наврятли смогут). Чем мне надо для этого пользоваться? Насколько я понимаю мне нужно int 13h и 3-я функция(прямая запись в сектор). Можете помочь примером как ее использовать?



Вопрос отправлен: 28.09.2003, 13:17
Отправитель: Inch (Inch@crazy.ru)

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

Отвечает ASMодей

Здравствуйте, Inch!
Уничтожение ФАТ не есть хороший способ - ты уничтожишь только информацию о расположении файлов, а сами данные останутся в целости и прочитать их с винта не составит никакого труда. Лучший способ быстро все стереть с винта - это стереть с него сервисную информацию (я точно не знаю, но слышал что какой-то вирус именно этим и занимался), правда после этого использовать винт уже не получится.

Ответ отправлен: 29.09.2003, 13:47
Отправитель: ASMодей


Отвечает _vt

Добрый день, Inch!
Берешь винт и - об пол... Никто не восстановит, если с любовью приложиться... Если не помогает - контрольный выстрел об стену... И знания ассемблера не нужны... :)))

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 29.09.2003, 01:48
Отправитель: _vt


Отвечает Ayl

Здравствуйте, Inch!
Быстро - это насколько быстро? За время, пока вышибают дверь? Тогда тебе лучше всего, ИМХО, иметь 2 винта и открытый корпус. причем нужный винт желательно неприкрученный. Вырубаешь комп, выдергиваешь питание и шлейф, убираешь его в тайник, врубаешь чистый - и все. Пока разберутся, что диск не тот, успеешь молоточком по нему пройтись. Или на магнит положить.
Можно также запустить fdisk, потом format - пусть восстанавливают.
Если времени чуток поболее - перезаписываешь всю информацию поверх случайными числами. Желателно несколько раз, чтоб остаточное намагничивание сбить.
Уничтожение FAT-таблицы не поможет, потому что сама инфа сохранится.
Кстати, еще вариант - в BIOS'е low level format.

Ответ отправлен: 29.09.2003, 17:33
Отправитель: Ayl


 Вопрос № 4231

Здравствуйте, уважаемые эксперты.
Слышала о мультиплатформенных исполняемых модулях, но вот убей понять не могу, каким образом такое можно организовать. Наверное, все дело в моем непонимании как собственно все загружается. Объясните как этого добиваются люди, а если есть пример(какой-нибудь исполняемый файлик) - буду бесконечно рада.
Спасибо всем огромное за внимание.



Вопрос отправлен: 28.09.2003, 15:06
Отправитель: Swetlana (snt_swetlana@rambler.ru)

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

Отвечает _vt

Доброе время суток, Swetlana!
Примером подобного является обычный PE EXE-файл: он работает в двух платформах -DOS и Win32... Причем стандартную заглушку для DOS (This program cannot run ... ) вполне можно поменять на полноценную DOS-программу...

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 29.09.2003, 01:48
Отправитель: _vt


 Вопрос № 4232

Здравствуйте, програмers.
Помню, когда изучал ассемблер для спектрума, отец достал где-то книжку по этому языку. Так в ней были две таблички - одна с алфавитным перечнем комманд процессора ( в соседней колонке их машинный эквивалент ) и вторая табличка, где сначала были написаны цифровые коды, а справа - их ассемблерный эквивалент.
Никто не знает, можно ли где найти такую же информацию для современных х86 процов ? Пока в и-нете не нашел.
Илья
mis421@list.ru



Вопрос отправлен: 29.09.2003, 08:40
Отправитель: Ilya (mis421@list.ru)

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

Отвечает Gibbel

Здравствуйте, Ilya!
Здесь можно скачать .pdf файл или заказать в бумажном виде (абсолютно бесплатно с доставкой на дом) документацию по коммандам всех x86 процессоров Intel вплоть до Pentium4.

Ответ отправлен: 29.09.2003, 13:22
Отправитель: Gibbel


Отвечает ShumV

Приветствую Вас, Ilya!
Можно, но я нахадил толлько до 80386 выше только в книгах, плюс у всех этих команд извращёная логика.
Ты что дизассемблер писать собрался.

Ответ отправлен: 29.09.2003, 15:30
Отправитель: ShumV


Отвечает _vt

Доброе время суток, Ilya!
Если хочешь - вышлю...

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 29.09.2003, 17:23
Отправитель: _vt


 Вопрос № 4233

Подскажите пожалуйста Е-Mail экспертов Igoryk и Ayl



Вопрос отправлен: 29.09.2003, 11:30
Отправитель: Rosa

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

Отвечает Ayl

Приветствую Вас, Rosa!
Так вроде бы в рассылке должен отображаться:
ayl@kot.spb.ru

Ответ отправлен: 29.09.2003, 17:13
Отправитель: Ayl


 Вопрос № 4235

Подскажите как получить RND на ассемблере



Вопрос отправлен: 29.09.2003, 14:22
Отправитель: Виталий

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

Отвечает Maverick

Приветствую Вас, Виталий!
У Юрова в исходниках, есть несколько алгоритмов.
Была в рассылке ссылка, где можно их достать.

Ответ отправлен: 30.09.2003, 11:36
Отправитель: Maverick


Отвечает Bob Johnson

Приветствую Вас, Виталий!
Взять одну из известных формул и по ней высчитать. Формулы уже пару раз здесь проходили, так что смотри в архивах.

* EMan1.5: ---===*** The game we play ***===---


Ответ отправлен: 29.09.2003, 19:34
Отправитель: Bob Johnson


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

Приветствую Вас, Виталий!
Смотри вопрос 3854.

;----------
;Мощный генератор случайных чисел. IN -> AX-range; OUT -> AX-число 0...AX-1;
;Взят из C++;
proc Rnd ;=========================================================
push bx cx dx ax
mov bx,3
mov cx,43FDh
mov ax,wptr [bp+Seed-dat]
mov dx,wptr [bp+Seed+2-dat]
push bx ax
or bx,dx
mov bx,cx
jnz rnd_1_1
mul bx
pop ax bx
jmp rnd_1_2
rnd_1_1:
mul bx
mov cx,ax
pop ax dx
push ax
mul dx
add cx,ax
pop ax
mul bx
add dx,cx
rnd_1_2:
add ax,9EC3h
adc dx,26h
mov wptr [bp+Seed-dat],ax
mov wptr [bp+Seed+2-dat],dx
mov ax,dx
and ah,127
pop cx
cwd
idiv cx
mov ax,dx
pop dx cx bx
ret
endp
;---------
sub ah,ah ;Установим начальное RND
int 1Ah
mov wptr [bp+Seed-dat],dx
mov wptr [bp+Seed+2-dat],cx




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


 Вопрос № 4236

Здравствуйте! Когда запускаю программу под отладчиком, не совсем ясно,где она начинается и заканчивается. Начинается, думаю, в той строке, в котороя я оказываюсь... А вот где заканчивается даже не знаю. Заниматься ассемблером только начал и не знаю, где искать ответ на мой вопрос. Подскажите или направьте, пожалуйста. Спасибо.



Вопрос отправлен: 29.09.2003, 14:51
Отправитель: Артём

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

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

Приветствую Вас, Артём!
Заканчивается там, где есть команда выхода в операционную систему:
mov ax, 4c**
int 33
или
int 20h


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


 Вопрос № 4238

Здраствуйте!
Не могли бы вы мне объяснить что за окошки у AFDPRO справа и снизу, а также что такое HS и FS (сверху).
Только не говорите что ставь лучше SoftIce и никаких проблем. Я хочу для начала разобраться в AFDPRO.
Заране спасибо



Вопрос отправлен: 29.09.2003, 20:23
Отправитель: Семен

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

Отвечает _vt

Доброе время суток, Семен!
Что такое HS и FS действительно загадка... А окошки - это дампы разных участков памяти
> Только не говорите что ставь лучше SoftIce ... Я хочу для начала разобраться в AFDPRO
Для dos лучше всего возьми turbo debugger - есть в комплекте tasm, bc, bp...

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 30.09.2003, 09:11
Отправитель: _vt


Отвечает ASMодей

Приветствую Вас, Семен!
Справа и снизу у AFDPro находятся окна, в которых ты можешь просмотреть содержимое любого участка памяти. Управление этими окнама осуществляется командами М1 и М2 соответственно (например команда М1 1000:1234 отобразит в правом окне дамп памяти с адреса 1000:1234).
HS и FS - это вроде как эмуляция дополнительных сегментных регистров и они как раз подходят для работы с вышеописанными окнами, чтобы можно было смотреть данные не изменяя реальных сегментных регистров.

Ответ отправлен: 30.09.2003, 12:01
Отправитель: ASMодей


 Вопрос № 4239

Здраствуйте!
Я везде по всему Internet'у ищу Helpassm но нигде его нет (у Олега Калашникова тоже).Может у вас она где-нибудь заволялась.Буду очень вам благодарен если вы вышлите ее мне на мыло.
Заране спасибо.



Вопрос отправлен: 29.09.2003, 20:28
Отправитель: Олег

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

Отвечает _vt

Доброе время суток, Олег!
Давай мыло, что же ты его не указал??? Вот моё... Кстати, посмотри еще у балдра (www.dospage.by.ru)

*** E-Man 1.5 (edition 04) - life is just a game...if you a student:) ***


Ответ отправлен: 30.09.2003, 09:11
Отправитель: _vt


Отвечает dimka

Здравствуйте, Олег!
What is your e-mail?


Ответ отправлен: 01.10.2003, 18:13
Отправитель: dimka


Отвечает madman!

Здравствуйте, Олег!
Что Вы имеете ввиду? Вы хотите какие-то хэлпы по асме достать или это хэлп так называется?

* EMan1.5: RAMMSTEIN & System of a Down is cool!


Ответ отправлен: 30.09.2003, 22:56
Отправитель: madman!



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

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

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

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

Ваше имя:

Ваш e-mail:

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


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

Ваш вопрос:


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


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


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

Программисту
Assembler (32)
C / C++ (26)
Perl (7)
Builder / Delphi (21)
Pascal (23)
Basic / VBA (9)
Java / JavaScript (10)
PHP (14)
Криптография (10)
WinAPI (14)
Пользователю
Windows 95/98/Me (54)
Windows NT/2000/XP (60)
"Железо" (42)
Поиск информации (26)
Администратору
Windows NT/2000/XP (32)
Linux / Unix (15)
Юристу
Гражданское право (13)
Семейное право (10)
Трудовое право (10)
КоАП (8)

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




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.


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

В избранное