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

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


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

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

Выпуск № 692
от 26.01.2004, 22:30

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


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

Евгений Иванов
Статус: Профессиональный
Общий рейтинг: 136.75
URL: Super Assembler Software
Телефон: Пчёлка +7 905 6601206
[Подробней >>]
Ayl
Статус: Профессиональный
Общий рейтинг: 116.52
[Подробней >>]
VOVAN
Статус: Доверительный
Общий рейтинг: 108.42
[Подробней >>]
 
vitya
Статус: Профессиональный
Общий рейтинг: 108.51
[Подробней >>]
Gibbel
Статус: Профессиональный
Общий рейтинг: 105.99
URL: Savage Metal Club - жизнь в стиле рок-н-ролл
Телефон: +7 901 710 3146
[Подробней >>]
dr_dolphin
Статус: Опытный
Общий рейтинг: 113.01
[Подробней >>]
 
ASMодей
Статус: Профессиональный
Общий рейтинг: 112.17
[Подробней >>]
never_again
Статус: Опытный
Общий рейтинг: 125.1
[Подробней >>]
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 146.12
URL: Программирование
[Подробней >>]
 
_vt
Статус: Профессиональный
Общий рейтинг: 117.81
URL: Тест
[Подробней >>]
SedHg
Статус: Доверительный
Общий рейтинг: 114.87
[Подробней >>]
Artemy
Статус: Опытный
Общий рейтинг: 116.15
Телефон: 8 905 549 38 66
[Подробней >>]
 
Dark_Lord
Статус: Профессиональный
Общий рейтинг: 110.26
[Подробней >>]


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

Вопрос № 4838. Здравствуйте, эксперты. Я тут застрял на одной проблеме. значит так. Я перехватываю 9 прерывание и б... (ответов: 2)
Вопрос № 4839. Здравствуйте! сразу извиняюсь за вопрос. скачал MASM6.12, распаковал, проинсталировал, а как програм... (ответов: 1)
Вопрос № 4840. Уважаемые эксперты! Вопрос конечно не имеет отношение к Ассемблеру, но думаю что с ним обращаться на... (ответов: 2)
Вопрос № 4841. Здравствуйте! Что такое RISC процессоры?... (ответов: 3)
Вопрос № 4842. Привет всем .Помогите написать ,пожалуйста ,процедуру или функцию перевода больших целых чисел из 1... (ответов: 2)
Вопрос № 4844. Добрый день. Подскажите пожалуйста как можно програмным методом проверить включен ли режим NumLock и... (ответов: 3)
Вопрос № 4849. Да в том то и проблема, что состояние светодиода мне абсолютно не важно... Мне главное сделать так, ... (ответов: 1)
Вопрос № 4850. Не могу добавить многопоточность в сервер. В одном потоке все работало, попытался вынести соединение... (ответов: 1)
Вопрос № 4852. Здравствуйте , уважаемые Эксперты. Помогите пожалуйста написать резидентную программу на ассембли.За... (ответов: 3)
Вопрос № 4855. Здравствуйте, уважаемые эксперты! Объясните пожалуйста по подробней что такое виртуальная память и ч... (ответов: 3)
Вопрос № 4857. Добрый вечер! Прошу разяснить мне, во что скомпилируется следующий код на С (отрывок драйвера ви... (ответов: 2)
Вопрос № 4859. Здравствуйте,уважаемые! Как программа может изменить вид указателя мыши (просто стрелка) в Windows ... (ответов: 5)

Вопросов: 12, ответов: 28


 Вопрос № 4838

Здравствуйте, эксперты. Я тут застрял на одной проблеме. значит так. Я перехватываю 9 прерывание и бросаю его на свой обработчик. Простые клавиши работают нормально, но у меня не получается отличить простые клавиши от тех которые посылают первый скан код 0Е. Т.Е. я получаю этот скан код (0Е), но дальше эти клавишт работают как простые... Например стрелка "Влево" работает как клавиша "6" на цифровой клавиатуре, а моей программе нужно, чтоб все клавиши работали отдельно друг от друга...
Пример того, что я делаю в приложении.


Приложение:


Вопрос отправлен: 18.01.2004, 17:00
Отправитель: Мое имя

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

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

Здравствуйте, Мое имя!
Во первых, pusha не сохраняет сегментные регистры.
У тебя
DS плавает!
Во вторых, нужно сбрасывать клавиатуру каждый раз в прерывании!
Вот и всё!
Удачи!

* EMan: -=- Любовь существует! =-=


Ответ отправлен: 18.01.2004, 23:35
Отправитель: Евгений Иванов


Отвечает Ayl

Добрый день, Мое имя!
Для клавиатур 101+ (которыми мы сейчас обычно и пользуемся) часть клавиш (дополнительные стрелки, панель дополнительных управляющих клавиш, правые Alt и Ctrl) генерируют такую последовательность скен-кодов: E0h (не 0Eh, а именно E0h. Кстати, в коде у тебя написано правильно), 2Eh (код правой клавиши Shift), E0h, код, соответствующей клавиши на 84-кнопочной клавиатуре.

Т.о., чтобы обработать эти клавиши, тебе нужно завести флаг, который будет устанавливаться при получении кода 0Eh и при получении другого кода анализировать его состояние. Если код будет 2Eh - пропускать. Если же что-то другое - преобразовывать. Кстати, при отпускании дополнительных клавиш также формируется 4 кода: E0h, AEh (код отпускания правого Shift\'а), E0h, 80h + код первоначальной клавиши.

Учти еще, что кнопка Pause формирует такую последовательность кодов: E1h, 1Dh, 45h при нажатии и E1h, 9Dh, C5h при отпускании.

Ответ отправлен: 19.01.2004, 11:15
Отправитель: Ayl


 Вопрос № 4839

Здравствуйте!
сразу извиняюсь за вопрос. скачал MASM6.12, распаковал, проинсталировал, а как программа запускается в упор не могу найти. и ещё, как вообще пользоваться асмом? (то есть конечно не как проги писать, а как с самим компилятором работать) если напишите что-нибудь дельное, буду бесконечно благодарен!!!!



Вопрос отправлен: 18.01.2004, 18:20
Отправитель: ZX

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

Отвечает VOVAN

Доброе время суток, ZX!
кидаешь исходник в одну папку с компилятором
пуск--выполнить--cmd---enter
откроется сеанс msdos'а.
там пишешь:
cd disk:каталог_где_лежит_исходник_с_компилятором enter
после этого ты перескочишь в папку с компилятором. теперь можешь писать
ml.exe cool_programm.asm /AT
или
masm.exe cool_programm.asm
link.exe cool_programm.obj /t
всё намного проще, если у тебя есть far:
просто копируешь, заходишь в папку, в ком. строке пишешь
ml.exe cool_programm.asm /AT
или
masm.exe cool_programm.asm
link.exe cool_programm.obj /t
получаешь .соm-файл, если написал прогу без ошибок (-:

Ответ отправлен: 19.01.2004, 11:55
Отправитель: VOVAN


 Вопрос № 4840

Уважаемые эксперты!
Вопрос конечно не имеет отношение к Ассемблеру, но думаю что с ним обращаться надо именно сюда.
Не могу разобраться с стандартом шифрования ГОСТ 28147-89. По моим соображениям получается, что шифруется только половина текста, т.к. младшая часть становиться на место старшей. Допустим текст в кодировке ASCII т.е. части состоят из четырех символов, попадается слово в младшей части из 4-х букв, т.о. оно не шифруется что ли?
Заранее спасибо.



Вопрос отправлен: 19.01.2004, 07:23
Отправитель: Pasha

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

Отвечает vitya

Приветствую Вас, Pasha!
Насколько я помню, в стандарте шифрования несколько раундов - то есть, во втором раунде блоки меняются местами и теперь шифруется другая часть.

Ответ отправлен: 19.01.2004, 08:55
Отправитель: vitya


Отвечает Gibbel

Доброе время суток, Pasha!
Мда, действительно не по теме. Интересно, а чем вы руководствовались, задавая вопрос по шифрованию в рассылку по Ассемблеру, при том, что есть рассылка по Криптографии.

Ответ отправлен: 19.01.2004, 14:42
Отправитель: Gibbel


 Вопрос № 4841

Здравствуйте!
Что такое RISC процессоры?



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

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

Отвечает Ayl

Здравствуйте, Александр!
RISC - Reduced Instruction Set Computing, вычисления с сокращенным набором команд. RISC-архитектура - архитектура процессоров, построенная на основе сокращённого набора команд. Характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Концепция RISC разработана Джоном Коком (John Cocke) из IBM Research, название придумано Дэвидом Паттерсоном (David Patterson).

CISC - Complex Instruction Set Computer - процессор со сложным набором команд. CISC - традиционная архитектура процессоров в противоположность RISC-процессорам. Процессоры семейств 80х86 и 680х0 относятся к CISC-процессорам, однако часто внутри самих CISC-процессоров используется RISC-архитектура.

Ответ отправлен: 19.01.2004, 11:22
Отправитель: Ayl


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

Приветствую Вас, Александр!
команды выполняются за такт. физически.
без всяких ухищрений.
много регистров.
мало команд для одного типа.
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 20.01.2004, 00:01
Отправитель: Евгений Иванов


Отвечает dr_dolphin

Приветствую Вас, Александр!

Процессоры с сокращенным набором команд (Reduced Instruction Set Computing).
Отличается высокой скоростью работы, большим регистровым массивом, а также высокой эффективностью выполнения инструкций. Обычно применяются в высокопроизводительных рабочих станциях и мощных серверах.
Пока !

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


 Вопрос № 4842

Привет всем .Помогите написать ,пожалуйста ,процедуру или функцию перевода больших целых чисел из 10-й с/с в 2-ую .Число дано в виде строки.Длина числа <= 255 знаков . Например:s1='1212212187773647646700094000054657780037' нужно перевести в 2-ую с/с.



Вопрос отправлен: 19.01.2004, 16:22
Отправитель: Seiphirot (Seiphirot@tut.by)

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

Отвечает Ayl

Приветствую Вас, Seiphirot!
Все просто...
Тебе нужны следующие функции:
1. Функция преобразования строки в массив чисел (255 элементов). Она пишется элементарно, даже не нужен второй массив. Просто из каждого символа строки вычитаешь символ нуля (\'0\').

2. Деление большого числа, представленного в виде массива цифр, на 2. Это тоже нетрудно написать, просматриваешь строку слева направо и делишь одну или 2 подряд идущие цифры на 2. Остатки сохраняешь в строке для результата. Учти, что при этом число будет записано в обратном порядке.

Алгоритм решения прост. Сначала вызываешь 1-ю функцию, потом в цикле - вторую до тех пор, пока частное не станет равным 1.



Ответ отправлен: 19.01.2004, 18:22
Отправитель: Ayl


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

Добрый день, Seiphirot!
дели столбиком.
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 20.01.2004, 01:47
Отправитель: Евгений Иванов


 Вопрос № 4844

Добрый день. Подскажите пожалуйста как можно програмным методом проверить включен ли режим NumLock и если да, то выключить его. Состояние светодиода я и сам могу сменить, а вот режим переключить чегой-то не получается.



Вопрос отправлен: 19.01.2004, 23:04
Отправитель: oo0U0oo

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

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

Добрый день, oo0U0oo!
могу посоветовать только просто выключай в любом случае светодиод.
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 20.01.2004, 19:59
Отправитель: Евгений Иванов


Отвечает dr_dolphin

Здравствуйте, oo0U0oo!
За переключение режима отвечает клавиатурный драйвер операционной системы, поэтому уточните пожалуйста в какой ОС вы пытаетесь это сделать.
До встречи....

Ответ отправлен: 20.01.2004, 08:17
Отправитель: dr_dolphin


Отвечает Ayl

Добрый день, oo0U0oo!
Если твоя программа работает в ДОС, то тогда состояние клавиш отображается в области BIOS по адресу 0:417 и занимает 2 байта. Установленные биты обозначают следующее:
байт 0:417
----------
7 - Insert
6 - Caps Lock
5 - Num Lock
4 - Scroll Lock
3 - Alt нажата
2 - Ctrl нажата
1 - Left Shift нажата
0 - Right Shift нажата
Также этот байт можно получить через функцию 2 прерывания 16h
Байт 0:418
----------
7 - Insert нажата
6 - Caps Lock нажата
5 - Num Lock нажата
4 - Scroll Lock нажата
3 - состоянии паузы
2 - SysReq нажата
1 - Left Alt нажата
0 - Left Ctrl нажата
Получить этот байт с помощью прерывания нельзя, хотя функция 12h прерывания 16h возвращает 16-битное значение, показывающее статус клавиш-переключателей:
15 - SysReq нажата
14 - Caps Lock нажата
13 - Num Lock нажата
12 - Scroll Lock нажата
11 - Right Alt нажата
10 - Right Ctrl нажата
9 - Left Alt нажата
8 - Left Ctrl нажата
7 - Insert
6 - Caps Lock
5 - Num Lock
4 - Scroll Lock
3 - Alt нажата
2 - Ctrl нажата
1 - Left Shift нажата
0 - Right Shift нажата


Ответ отправлен: 20.01.2004, 11:58
Отправитель: Ayl


 Вопрос № 4849

Да в том то и проблема, что состояние светодиода мне абсолютно не важно... Мне главное сделать так, чтоб при запуске программы NumLock был выключен и потом, если, во время работы программы, пользователь случайно (или нарочно) нажмёт на клавишу NumLock, чтобы это было проигнорировано программой или просто опять выключить режим NumLock...



Вопрос отправлен: 20.01.2004, 21:52
Отправитель: oo0U0oo

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

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

Добрый день, oo0U0oo!
Обработчик 9-го прерывания.
Всё это можно сделать.
А состояние - по адресу 0:417h, 0:418h
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 21.01.2004, 21:11
Отправитель: Евгений Иванов


 Вопрос № 4850

Не могу добавить многопоточность в сервер. В одном потоке все работало,
попытался вынести соединение в отдельную нить, но accept выдает ошибку.
Объявил глобально не только listensock, но и все переменные из WinMain, результат тот же.
В какой-то статье читал, что если пишешь на C/C++, то вместо CreateThread надо юзать _beginthreadex, но с ней другие проблемы.
С потоками никогда не работал. ПОЖАЛУЙСТА, ПОМОГИТЕ РАЗОБРАТЬСЯ.
P.S. исходники переписывались с асм'а, так что не оффтопик.


Приложение:


Вопрос отправлен: 20.01.2004, 21:50
Отправитель: softsnap

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

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

Здравствуйте, softsnap!
А зачем же ты сразу после создания потока вызываешь функцию WSACleanup? Ты же сам и не даешь потоку ничего сделать.
Вот тебе цитата из описания WSACleanup в MSDN:
"In a multithreaded environment, WSACleanup terminates Windows Sockets operations for all threads."
Эту функцию надо вызывать уже после того, как все потоки отработают.

Ответ отправлен: 21.01.2004, 06:34
Отправитель: ASMодей


 Вопрос № 4852

Здравствуйте , уважаемые Эксперты.
Помогите пожалуйста написать резидентную программу на ассембли.Задача состоит в следующем:
после нажатия на клавиатуре знака CTRL-F1 (скан код 94) ,и его появления в очереди клавиатуры , начиная с этого момента и в дальнейшем все маленькие литеры будут заменяться на большие.
после нажатия на клавиатуре знака CTRL-F2 (скан код 95) ,и его появления в очереди клавиатуры прекратится замена литер.
CTRL-F1 и CTRL-F2 необходимо удалять из очереди клавиатуры.
то есть после запуска программы если я нажму на CTRL-F1
и нажму на клавиатуре 'a' то на экране она отпечатается как 'A'.
Заранее благодарен.



Вопрос отправлен: 21.01.2004, 10:40
Отправитель: Владислав (starvk@bezeqint.net)

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

Отвечает Ayl

Здравствуйте, Владислав!
Думаю, что тебе нужно действовать так.
Пишешь обработчик прерывания 16h следующим образом:
1. Проверяешь номер функции. Если он равен 0 или 10h, то начинаешь обработку, иначе передаешь управление старому обработчику.
2. - Здесь номер функции 0 или 10h (ожидание нажатия клавиши) -
2.1. Вызываешь старый обработчик и проверяешь код нажатой клавиши
2.2. Если нажат Ctrl+F1, то устанавливаешь флаг перевода в верхний регистр и снова вызываешь старый обработчик. Возвращаешься к п.2.2
2.3. Если нажат Ctrl+F2, то снимаешь флаг перевода и снова вызываешь старый обработчик. Возвращаешься к п.2.2
2.4. - Сюда попадаешь, если не нажаты Ctrl+F1 или Ctrl+F2 -
Проверяешь флаг. Если он установлен - меняешь регистр (скорее всего проще использовать таблицу перекодировки)
2.5. Выходишь из обработчика прерывания

Вообще-то можно поступить и другим способом:
1. Обрабатываешь прерывание от клавиатуры (int 9).
2. Проверяешь, что нажата клавиша F1 и установлен флаг нажатия Ctrl
3. Если это так, то устанавливаешь флаг нажатия клавиши Caps Lock. Теперь обработка перевода в верхний регистр будет автоматически производится стандартным обработчиком прерывания 9
4. Если же нажата клавиша F2 и установлен флаг нажатия Ctrl, то сбрасываешь флаг нажатия Caps Lock
При такой реализации ты также можешь ввести дополнительный флаг, который будет показывать, производилось ли нажатие Ctrl+F1 и Ctrl+F2 для корректного сброса флага Caps Lock.
4/


Ответ отправлен: 21.01.2004, 16:25
Отправитель: Ayl


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

Приветствую Вас, Владислав!
см. на моём сайте программу CLSF11.
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 22.01.2004, 01:44
Отправитель: Евгений Иванов


Отвечает never_again

Доброе время суток, Владислав!
Заведе переменную которая будет принимать значение 20Н при нажатии на CTRL-F1 и 0H при нажатии на CTRL-F2. А символы потом просто ксорь с этой переменной.

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


 Вопрос № 4855

Здравствуйте, уважаемые эксперты!
Объясните пожалуйста по подробней что такое виртуальная память и чем она отличается от физической.



Вопрос отправлен: 22.01.2004, 17:46
Отправитель: sniffer

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

Отвечает Bob Johnson

Добрый день, sniffer!
Ее размер не ограничен физически присутствующей в компьютере памятью - механизм виртуальной памяти позволяет выгружать из физической памяти страницы на диск, а на освободившееся место загружать другие. Это, конечно, замедляет работу компьютера, зато позволяет запускать большее количество программ одновременно.

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


Ответ отправлен: 25.01.2004, 21:14
Отправитель: Bob Johnson


Отвечает never_again

Доброе время суток, sniffer!
А тем, что виртуальная память это твой жесткий диск. В принципе система имеет право использовать его целиком под свои нужды, но обычно берёт себе пару-тройку сот мегабайт и на этом останавливается. Ты, кстати, можешь вообще запретить системе использовать виртуальную память, но это не рекомендуется делать ни программистами Майкрософта, ни мною и думаю остальные эксперты меня поддержут (естественно ИМХО).

Ответ отправлен: 22.01.2004, 18:01
Отправитель: never_again


Отвечает dr_dolphin

Доброе время суток, sniffer!
Виртуальное адресное пространство это та пямять которая может быть адресована впринципе. Т.е. это та область памяти к которой можно обратиться через шину адреса компьюьера. Например Pentium может адресовать 2^36 байт, с использованием страничной адресации и постаничной подкачки информации с диска в память.
Физическая память - это память которая реально имеется на компьютере обычно (128,256,512 Мб и т.д). Ее объем обычно меньще виртуального адресного пространства компьютера.
А вообще для более детального объяснения этих терминов рекомендую мануалы фирмы Intel по процессорам с архитектурой IA-32.
Пока...


Ответ отправлен: 23.01.2004, 12:30
Отправитель: dr_dolphin


 Вопрос № 4857

Добрый вечер!
Прошу разяснить мне, во что скомпилируется следующий код на С (отрывок драйвера видио карты S3 trio для linux компилятор gcc 2.94).
Если знаете то обязательно напишите про строки отмеченные "!!"


Приложение:


Вопрос отправлен: 22.01.2004, 21:47
Отправитель: Alexej

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

Отвечает _vt

Добрый день, Alexej!
> во что скомпилируется следующий код на С
В машинный код! :-)
По приведенному куску ничего сказать нельзя - он неполный! Да и любой С будет компилировать это по разному.
--- E-Man 1.5+ : Life begins at 1000 MHz!


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


Отвечает SedHg

Здравствуйте, Alexej!
Какой-то странный вопрос %). Вам что лень самому посмотреть
во что это компилируется ...
Да и вообще это рубрика "Ассемблер"...


Ответ отправлен: 24.01.2004, 00:44
Отправитель: SedHg


 Вопрос № 4859

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



Вопрос отправлен: 22.01.2004, 22:20
Отправитель: Александр

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

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

Здравствуйте, Александр!
SetCursor
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 22.01.2004, 23:35
Отправитель: Евгений Иванов


Отвечает Artemy

Добрый день, Александр!
Используй API LoadCursor и SetCursor.

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


Отвечает Bob Johnson

Доброе время суток, Александр!
SetCursor.

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


Ответ отправлен: 25.01.2004, 21:15
Отправитель: Bob Johnson


Отвечает dr_dolphin

Здравствуйте, Александр!
Загрузить его из файла ресурса и сделать активным в твоем приложении.
Пока.


Ответ отправлен: 23.01.2004, 12:30
Отправитель: dr_dolphin


Отвечает Dark_Lord

Здравствуйте, Александр!
LoadCursor(instl; curName/curID); - для загрузки курсора
SetCursor(hCursor); - для установки курсора!

Ответ отправлен: 23.01.2004, 16:30
Отправитель: Dark_Lord



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

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

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

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

Ваше имя:

Ваш e-mail:

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


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

Ваш вопрос:


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


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


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

Программисту
Assembler (23)
C / C++ (17)
Perl (3)
Builder / Delphi (17)
Pascal (17)
Basic / VBA (6)
Java / JavaScript (4)
PHP (14)
Криптография (5)
WinAPI (10)
Радиоэлектроника (4)
Пользователю
Windows 95/98/Me (41)
Windows NT/2000/XP (58)
"Железо" (32)
Поиск информации (19)
Администратору
Windows NT/2000/XP (31)
Linux / Unix (10)
Юристу
Гражданское право (17)
Семейное право (11)
Трудовое право (13)
КоАП (12)

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




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


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


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

В избранное